דף הבית » טריקים וטיפים, מומלצים

להוסיף באופן אוטומטי שדה מיוחד לכל פוסט חדש שמתפרסם

2 בספטמבר 2010 | מאת רמי | 4 תגובות | תגיות: , , , , , ,

איך ניתן להוסיף באופן אוטומטי שדות מיוחדים כאשר מתפרסם פוסט או עמוד חדש? הטריק הבא מתאים לאתרים המייצרים תכנים מורכבים או לכותבי תוספים ששומרים מידע הקשור לפוסטים מסוימים. לדוגמא תוסף ששומר מידע על כמות הצפיות של הדף יוצר בדרך כלל שדה מיוחד לכל דף, וכל פעם שניגשים לדף, השדה המיוחד מתעדכן. תוסף דירוגים, גם הוא יוצר שדות מיוחדים לכל פוסט, בשדות אלה נשמר מידע כמו כמות המדרגים והדירוג הממוצע. אם אתם כותבים תוסף עבור האתר שלכם או עבור הלקוח שלכם, כדאי שתכירו את הטריק הבא.

לוגו וורדפרס מתקלף

לוגו וורדפרס מתקלף

הקוד

כדי להוסיף שדה מיוחד באופן אוטומטי לכל פוסט חדש, יש להוסיף את הקוד הבא לקובץ functions.php בערכת העיצוב או לתוסף שלכם:

function add_custom_field_automatically($post_ID) {
    global $wpdb;
    if ( !wp_is_post_revision($post_ID) ) {
        add_post_meta($post_ID, 'field-name', 'custom-value', true);
    }
}
add_action('publish_page', 'add_custom_field_automatically');
add_action('publish_post', 'add_custom_field_automatically');

במקום field-name הזינו את שמו של השדה המיוחד, ובמקום custom-value הזינו את הערך שלו.

מאת רמי

אחראי על אתר וורדפרס בעברית ועל תרגום ושחרור גרסאות וורדפרס בעברית. מפתח ליבה, בכל גרסה החל מגרסה 2.8, מפתח מוביל בגרסה 4.4 ובגרסה 4.6. מספק שירותי פיתוח אתרים, פיתוח תוספי וורדפרס לסטרטאפים ופיתוח כלים למפתחי וורדפרס - GenerateWP.com.

4 תגובות »

  • פיימן כותב :

    רמי שלום ראשית האתר שלך פצצה למדתי ממני המון עכשיו אודה לך אם תוכל לעזור לי במשהו שאני מתקשה :

    אני יצרתי post type שנקרא : deals ויש לו שדה מיוחד שנקרא : hotelID שמקבל ID של פוסט רגיל (ולא post type) ,לפוסטים הרגילים יש שדה מיוחד שנקרא : haveDeal שאוטומטית שווה ל 0 שיוצרים פוסט.
    אני רוצה שברגע שאני יוצר post type מסוג Deals חדש ומעדכן את השדה המיוחד שלו : hotelID למספר פוסט מסוים נגיד פוסט מספר 12
    אז השדה מיוחד של פוסט מספר 12 יהיה שווה ל 1 כלומר :
    haveDeal=1 בפוסט מספר 12 .

  • רמי כותב :

    פיימן, לשלוח לך הצעת מחיר?! 😉

  • uri כותב :

    הפוסט הזה הינו יצירת שדה מותאם אישית לפוסט

    איך אני מכניס את השדה הזה לתוף הפוסט שמוצג באתר

  • רמי כותב :

    כדי להציג את השדה המיוחד באתר יש להשתמש בפונקציות הבאות בקבצי התבנית:

    • the_meta()
    • get_post_meta()

    לשימושים מורכבים יותר ניתן להשתמש ב:

    • get_post_custom()
    • get_post_custom_values()
    • get_post_custom_keys()

הוסף תגובה !

נא לא לשאול שאלות שלא קשורות לפוסט, זהו לא פורום תמיכה. לבעיות אישיות ונושאים מורכבים אפשר ליצור איתי קשר.

תגיות HTML מורשות לשימוש:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>