כבר שמעתי לא מעט אנשים מדברים על תצוגת "מצב הרוח" ב-LJ ועל כך שאין בוורדפרס דרך לעשות דברים שכאלו, אז זהו – שיש.
מהם שדות מיוחדים
במסך העריכה של וורדפרס, אי שם למטה יש חלק הקרוי שדות מיוחדים. שדות מיוחדים הם שדות שהוגדרו לפוסט מסויים ומכילים עבורו ערך.

השדות לא חייבים להיות קיימים עבור כל פוסט, הם יכולים להיות בשימוש תמיד, לעיתים או רק חד פעמית.
בשדות אלו ניתן להוסיף מידע שלאו דווקא שייך לפוסט עצמו.
- מצברוח: מעודד
- מזג האוויר: מוזר לחלוטין
- קוראת: חוק הקוסמים הראשון
- שומעת כרגע: דיאנה קרול
מאידך השדות יכולים גם להכיל מידע שכן שייך לפוסט עצמו ומשתנה מפוסט לפוסט, למשל: זכויות יוצרים על הפוסט, דירוג ספר בבלוג ביקורת ספרים ועוד כהנה וכהנה.
איך הם עובדים
כאשר עורכים פוסט או דף ניתן להוסיף לו שדה מיוחד. לכל שדה מיוחד יש "מפתח" ו"ערך". המפתח הוא שם השדה, בעזרתו ניתן לקבל מאוחר יותר את ערך השדה.
המפתח והערך יכולים להיות גם מחרוזת בעברית.
אם למשל נרצה להציג את מצב הרוח בפוסט, שם השדה יכול להיות "מצברוח" או "מצב הרוח", והערך "שמח","עייף" וכו'
כאמור המידע בשדה המיוחד יאוכסן עם הפוסט או הדף שכתבנו וישוייך אליו.
ואיך מציגים את זה בבלוג ?
יש מספר דרכים להציג את המידע בבלוג. הקלה מכולן מציגה את המידע בצורת רשימה הממויינת לפי שם המפתח. הצגה זאת מתבצעת בעזרת שורת הקוד הבאה:
1 | < ? the_meta(); ?> |
קריאה לפונקציה זו תייצר את הרשימה הבאה:
- מפתח1: ערך
- מפתח2: ערך
- מפתח3: ערך
חשוב לשים לב: את הקריאה לפונקציה צריך למקם בדף התבנית הרצוי במקום בו המשתנה post$ כבר הוגדר – כלומר בתוך הלולאה של וורדפרס.
הדרך השניה (גם קלה יחסית) היא בעזרת קריאה לפונקציה הבאה:
1 | get_post_meta($post_id, $key, $single = true); |
כאשר:
post_id$ – מזהה הפוסט, בתוך הלולאה ניתן לגשת אליו על ידי שימוש ב:post->ID
$key – המפתח שאת ערכו רוצים לשלוף
single$ – האם הערך יחיד או שיש עוד כמוהו, לפעמים נרצה לעשות מספר שדות מיוחדים בעלי אותו המפתח – במקרה כזה יש לנו רשימה. אם ערכו של משתנה זה הוא true יוחזר לנו ערך השדה הראשון בעל המפתח key$ ללא קשר לכמות השדות הקיימים עם אותו המפתח.
הקריאה לפונקציה מחזירה את ערך השדה בעל המפתח הנתון. כך שיש להדפיס את הערך המוחזר ממנה למסך על מנת להציגו
1 | echo get_post_meta($post->ID, “Key2″, $single = true); |
שימושים מתקדמים
יש דרכים נוספות ומתקדמות יותר להשתמש בשדות מיוחדים.
על מנת להציג את מצב הרוח בעזרת תמונה במקום טקסט פשוט ניתן לעשות את הדברים הבאים:
ליצור תמונות מצברוח רלוונטיות, למשל sad.png, happy.png, crying.png וכו'
כעת נשתמש בחתיכת הקוד הבאה:
1 2 | $mood = get_post_meta($post->ID, "מצברוח", $single = true); <img src=“/smilies/<?php echo $mood ?/>.png” alt=“מצברוח” /> |
עבור הערך happy יוצג הפרצוף השמח וכו'
באותה הצורה עבור דירוג של ביקורת ספר – ייצרו לעצמכן תמונות של כוכב ושל חצי כוכב star.png, half.png והשתמשו בקוד הבא:
1 2 3 4 5 |
עבור הערך דירוג: 3.5 יוצגו שלושה וחצי כוכבים.
עבור רשימת הספרים האתם קוראים כרגע, ניתן להשתמש בקוד הבא (מראה שימוש בריבוי שדות בעלי אותו המפתח).
1 2 3 4 5 6 7 | <?php $books = get_post_meta($post->ID, “ספרים”, $single = false); ?> <p>כרגע קוראת את:</p> <ul> <?php foreach( $books as $book ) { echo “<li>”.$book.“”; } ?> </ul> |
הייתרון היחסי
שדות מיוחדים פשוט עושים את החיים מעט קלים יותר.
לא תמיד אנחנו מוצאים תבנית שבדיוק מתאימה לנו, לא תמיד אנחנו מוצאים תוסף שעושה בדיוק את מה שאנחנו רוצים.
שדות מיוחדים מאפשרים בדרך כלל לאדם שאינו מתכנת גדול (או בכלל) להוסיף לבלוג האישי טאץ' פרטי ואישי. לשנות פוסטים, תצודה ומידע בלי להתעסק בקרביים של המכונה.
שווה לקרוא: Using costum fields
נהניתם ? הרשמו לעדכוני RSS !
הו, מעולה! סופסופ מדריך עבור אלה מאיתנו שכבר יש להם בלוג עצמאי ורוצים להוציא קצת יותר מהוורדפרס.
אכן מעולה.
ברור לך שחשבתי עלייך בדוגמה הראשונה שנתתי, נכון ?
כן, דה. הייתי מאוכזבת מאוד אם לא!
(מצד שני, אני ממש לא יצירתית בתחום של מצבי רוח בל"ג, רק משתמשת שם בכמות עצומה של איקונים מזעזעים המתאימים לכל שטות אפשרית. נו, כמו במסנגר!)
פוסט בהחלט מזין ודרוש!
תודה
פינגבאק: הבדיקות » Blog Archive » תמונה לפוסט
פינגבאק: תמונה לפוסט | הבדיקות
וואלק.. אחרי שחיפשתי בשלוש השעות האחרונות הסבר על השדות האלו- מצאתי את הבלוג שלך ועזרת לי המון.
אלפי תודות
)
If at first you don't succeed, find out if the loser gets anything.
How is it that just anyone can create a weblog and get as popular as this? Its not like youve said anything incredibly impressive –more like youve painted a quite picture about an issue that you know nothing about! I dont want to sound mean, right here. But do you genuinely think that you can get away with adding some quite pictures and not definitely say something?
אני לא חיית וורדפרס ואחרי שבנו לי את האתר (הבן שלי) אני מנסה להסתדר וזה קשה מאד
קריאה בבלוג כאן מאד עוזרת לי
תודה תודה