בר ניווט עליון 25 בנוב' 2007

מאת: ~ניצן~ ~ניצן~ | הדפסה |

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

ראשית – כיצד יוצרים בר ניווט.

על מנת לייצר את בר הניווט יש צורך לייצר מקטע מתאים בקובץ ה css של האתר. אני מצרף פה את קטע הקוד שבו אני השתמשתי, הוא לא פאר היצירה, אבל הוא יעבוד והוא ברור מספיק כדי להבין מה עושה מה (אני מקווה, בכל מקרה תסלחו לי בבקשה על בחירת הצבעים המזוויעה).

  1. #menu {
  2.         float: right;
  3.         width: 700px;
  4.         margin: 0 9px 0 0;
  5.         overflow: hidden;
  6.         background: #73a0c5;
  7.         }
  8.  
  9. #menu ul {
  10.         list-style: none;
  11.         }
  12.  
  13. #menu li {
  14.         float: right;
  15.         background: red;
  16.         padding: 0 0 0 5px;
  17.         margin: 0 0 0 3px;
  18.         list-style: none;
  19.         }
  20.  
  21. #menu a {
  22.         float: none;
  23.         display: block;
  24.         padding: 4px 6px 3px 9px;
  25.         margin-right: 3px;
  26.         text-decoration: none;
  27.         font-weight: bold;
  28.         color: #E5A153;
  29.         }
  30.  
  31. #menu a:hover {
  32.         color:#E5D6B8;
  33.         background:orange;
  34.         }

עכשיו, יש לנו אובייקט שנקרא menu ונוכל לקרוא לו מכל מקום על ידי:

  1. <ul style=”menu”>
  2. <li> object </li>
  3. <li> object </li>
  4. </ul>

הטמעה של קטע הקוד הלז תיצור בר ניווט עליון שבו שתי תגיות עם הכיתוב object. כמובן שניתן להרחיב את זה הלאה ולהכניס במקום object כל קישור שהוא – ובכך ליצור בר ניווט סטנדרטי – למשל:
  1. <ul id=”menu”>
  2. <li> <a href=”/”>Home</a></li>
  3. <li><a href=”/about”>About</a> </li>
  4. </ul>

קטע הקוד לעיל מייצר בר ניווט בעל שתי לשוניות – Home ו About. אם נטמיע את קטע הקוד הלז בתוך קובץ ההדר (header.php) נקבל בכל עמוד באתר את הלשוניות הללו.

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

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

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

  1. <ul id="menu">
  2.         < ?php  
  3.         $defaults = array('show_count' => 0, 'use_desc_for_title' => 1, 'child_of' => '3′, 'title_li' =>");
  4.         wp_list_categories($defaults); ?>
  5.         </ul>

בברירת המחדל, פונקציית ה wp_list_categories מייצרת רשומות תחומות בתגיות li. היות ותחמנו את הקריאה לפונקציה ב ul מסוג menu הרי שהעיצוב שיתקבל הינו עיצוב התפריט.

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

וכך עושים את זה:

  1. < ? $catid=3; ?>
  2.         <ul id="menu">
  3.         < ?php  
  4.         $defaults = array('show_count' => 0, 'use_desc_for_title' => 1, 'child_of' => $catid, 'title_li' =>");
  5.         wp_list_categories($defaults); ?>
  6.         </ul>

הפעם השתמשנו במזהה שנקרא catid ונתנו לו את הערך 3. כשהצבנו אל תוך default את הערכים הרלוונטים במקום לכתוב child_of=3 ניתן לכתוב child_of=$catid. אם ארצה לשכפל את הדף עבור קטגוריה שמספרה הוא 8, כל שעלי לעשות הוא לשמור את הקובץ מחדש בשם category-8.php ולשנות את הערך ל 8.

Popularity: 11% [?]


הכותבנכתב ע"י ~ניצן~
שלח מייל | כל הפוסטים של ~ניצן~ | קטגוריות: וורדפרס | תגיות: אין

RSSעידכונים ב RSS

תגובות

תגובה אחת


Trackbacks

שם (חובה)

Email (חובה)

אתר

משהו להוסיף?

XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>



פוסטים קשורים

פוסטים אחרונים

הצגת RSS בוורדפרס

~ניצן~
הצגת RSS בוורדפרס בשבוע שעבר יצאתי כאמור למילואים, כמה שינויים בערכת העיצוב נתקעו ברמת שרת הפיתוח ולא עלו לשלב הבא, בגלל נושא של ...
רגע, יש עוד ←


פגרת הקיץ

~ניצן~
פגרת הקיץ כילד אתה לומד לחכות ולצפות לפגרת הקיץ, חופש גדול אנחנו קוראים לזה כאן. אני מניח שהורים דווקא היו נותנים הכל ...
רגע, יש עוד ←


סיוט ברכבת

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


קטעי ווידאו נבחרים

  • Click to play video

קטגוריות

הרשמה במייל

כתובת דואר אלקטרוני:

FireStats icon ‏מריץ FireStats‏