במסגרת ההתעללות הסידרתית שאני מעביר את ערכת העיצוב המינגווי החלטתי להוסיף תמיכה בתמונה מזהה לפוסטים. הכוונה, שבכל מקום שבו הפוסט יופיע כתקציר (למשל: עמוד קטגוריה, עמוד חיפוש וכ') אני אוכל להציג ליד התקציר גם תמונה מזהה שתקל על הבנת התוכן.
אחת הדרכים הפשוטות ביותר לעשות את זה היא לערוך עבור כל פוסט את שדה התקציר שלו כך שיכיל קריאה לתמונה בנוסף לתקציר עצמו. הדרך הזו היא אומנם הפשוטה ביותר אך היא דורשת עבודת עריכה נוספת שלא תמיד יש כוח לעשותה.
את הדרך השניה לבצע את המשימה מצאתי בפוסט של אח"י דקר כחלק מהשלב של ייצוג פוסטים קשורים כתמונות. השיטה הזו משתמשת בתוסף בשם post_image המאפשר לשייך לכל פוסט תמונה על בסיס התמונות המקושרות אליו. הפיתרון הזה אומנם עובד ולכאורה הוא הפשוט ביותר, אבל בניסיונות שערכתי התברר שהגמישות שלו עומדת בעוכריו.
הפיתרון השלישי, עליו הלכתי בסוף, אינו מצריך תוספים ומשתמש בפונקציית השדות המיוחדים (ובעברית) של וורספרס.
לצורך כך, יצרתי שדה מיוחד בשם large-picture והזנתי עבורו כערך לינק לתמונה המייצגת. אל תוך הלולאה שמציגה את הפוסטים בעמוד הראשי הוספתי את הקוד הבא:
< ?php
$key= "large-photo";
if($image = get_post_meta($post->ID, $key, true)){
echo ""; }
?>
התוצאה – עבור כל פוסט מתבצעת בדיקה האם קיים ערך עבור השדה המיוחד שנקרא large-photo, אם כן היא מוצגת, אם לא – מתעלמים וממשיכים הלאה. כמובן שעל מנת שהתמונה תיראה במיטבה יש צורך לייצר עבורה הגדרת עיצוב מתאימה בקובץ ה CSS של הערכה.
הפיתרון הלז עובד, אבל לא שלם (מבחינתי), הייתי צריך למצוא דרך לשייך בתצוגה תמונות עבור כל הפוסטים שלי מבלי לעבור אחורה על כל הפוסטים ולשייך להם תמונה ידנית – במילים אחרות – תמונה דיפולטית שתופיע במקרה ואין תמונה קיימת.
לצורך כך, יצרתי תמונה דיפולטית בגודל הרצוי ושיניתי את הקוד לעיל בצורה הבאה:
< ?php
$key= "large-photo";
$defaultPic = get_bloginfo('template_directory') . '/images/di.jpg';
if($image = get_post_meta($post->ID, $key, true)){
echo ""; }
else
echo "";
?>
כאן, מתבצעת בדיקה האם משוייכת לפוסט תמונה. אם כן מוצגת התמונה, אך במקרה ולא – מוצגת התמונה הדיפולטית.
למטיבי לכת
א. השיטה הלז מאפשרת למעשה לייצר עבור כל פוסט מערך שלם של תמונות מקושרות למטרות שונות. כך ניתן להציג תמונה אחת בעמוד האינדקס, תמונה אחרת בעמוד תוצאות חיפוש ותמונה שונה לעמוד קטגוריה. אפשר לקחת את זה אפילו הלאה ולייצר סוג של וילון אג'קסי שמציג את 4 הפוסטים האחרונים באמצעות התמונות המשויכות אליהם.
ב. מי שרוצה לגוון ולהשתמש ביותר מתמונה דיפולטית אחת יכול להשתמש בפונקציות נוספות של וורדפרס כגון the_category. כך למשל, ניתן לייצר אסופת תמונות עם השמות של כל אחת מהקטגוריות ולקרוא לתמונת ברירת המחדל לפי שם הקטגוריה. כאן צריך לשים לב שוורדפרס מחזירה פה מערך של כל הקטגוריות אליהן משוייך הפוסט ולכן צריך לדעת לבחור את הראשון (או האחרון או כל חוקיות אחרת שבוחרים).
כתיבת תגובה