12
בספט
2009

וורדפרס: איך להאיר את שם הקטגוריה גם כשצופים בפוסט בודד?

מאת: מאור ברזני | תגובות: 2 | נושאים: וורדפרס
תגיות: , , |

הפונקציה של וורדפרס wp_list_categories() שימושית מאוד להצגה דינמית של רשימת קטגוריות. הפונקציה יכולה לקבל משתנים רבים כדי להשפיע על אופן התצוגה של הרשימה ואילו פריטים יופיעו או לא יופיעו שם.

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

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

את הקוד הקצר הבא אפשר לשתול במקום הקריאה הרגילה לפונקציה wp_list_categories(). אם הקטגוריות מופיעות אצלכם בראש העמוד בבר הניווט, סביר להניח שתמצאו את הקריאה לפונקציה הנ"ל בקובץ header.php

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

להלן הקוד, שיאפשר להחיל את עיצוב שם הקטגוריה גם בצפייה בפוסט בודד:

[ccewn_php]<?php
if  (is_single()) {
$catsy = get_the_category();
$myCat = $catsy[0]->cat_ID;
}
wp_list_categories('title_li=&current_category='.$myCat)
?>[/ccewn_php]

כמובן שהפונקציה עצמה wp_list_categories() יכולה לקבל פרמטרים שונים נוספים. אם קיימים פרמטרים כאלה אצלכם (אלה שמופיעים בתוך הסוגריים בשורה 6), אל תמחקו אותם. כדי לשמור על פעולת הפונקציה כפי שהיא אצלכם בתבנית, פשוט תוסיפו את הקוד הנ"ל שבשורות 2-5, ובפונקציה wp_list_categories() תוסיפו בסוף את התוספת שבסוף שורה 6 –

[ccewn_php]&current_category='.$myCat[/ccewn_php]


שתפו גם אחרים:
  • email
  • Print
  • RSS
  • Facebook
  • Twitter
  • LinkedIn
  • Google Bookmarks
  • Live
  • PDF
  • MySpace
  • del.icio.us
  • Digg
  • Technorati
  • Yahoo! Bookmarks
  • Yahoo! Buzz
  • Add to favorites

2 תגובות »

  • נחומי הגיב:

    אז בשביל להאיר את שם הקטגוריה גם כשצופים בפוסט בודד איפה אני תוקע את הקוד הבא?:
    cat_ID;
    }
    wp_list_categories('title_li=&current_category='.$myCat)
    ?>

    סליחה על בורותי.

  • @נחומי
    אתה צריך לשתול את כל שורות הקוד ששמתי כדי שזה יעבוד לך.
    פשוט אם מופיעה לך כבר כיום הפונקציה wp_list_categories עם פרמטרים נוספים בתוכה, אז אל תמחק אותם אלא תוסיף בתוך הסוגריים את התוספת.
    אבל את השורות הקודמות אתה חייב להוסיף, כי הן אלה שמגדירות את ביצוע העניין.
    כמו שכתבתי בפוסט, אם הקטגוריות אצלך מופיעות בבר ניווט עליון, סביר להניח שהפונקציה קיימת אצלך בקובץ header.php

פיד RSS לתגובות בפוסט | טראקבק


הוסף תגובה

CommentLuv badge

TechnoCraft - פתרונות אינטרנט


אֶקְסְפֶּרִימֶנְט דוֹט אֶפֶס - וורדפרס, תוכן, טכנולוגיה ועוד כמה דברים - מופעל באמצעות WordPress | פתרונות אינטרנט