הצגת פוסטים הקשורים לתגית

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

  • tag-slug.php
  • tag.php
  • category.php
  • index.php

כלומר, עבוא התגית וורדפרס שהסלאג שלה הוא wp יתבצע חיפוש אחר דף התבנית tag-wp.php אם הדף נמצא – מצויין. אם לא, המערכת תחפש את tag.php וכן הלאה.

אסף שאל איך ניתן לעשות דף שיראה רק את הקישורים לפוסטים הקשורים לתגית, התשובה היא בקובץ tag.php.

קחו את קובץ index.php של התבנית שלכם (או את category.php) ויצרו עותק חדש שלו בשם tag.php.
בקובץ החדש החליפו את תוכן הלולאה בקוד הבא:

1
<li><a href='<? the_permalink();?>'>< ? the_title();?></a></li>

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

עוד על תבנית התגיות בקודקס של וורדפרס

025 הצגת פוסטים הקשורים לתגית נהניתם ? הרשמו לעדכוני RSS !

שימוש מושכל בתגיות וורדפרס

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

בבלוג בישול לראות תגיות זה אחלה
באתר נדל"ן ?
בבלוג וורדפרס – מצויין.
באתר פורטפוליו ?
וכו'

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

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

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

ברגע שהפסקנו לחשוב על תגיות כתיוג בסיסי אלא כתיוג פונקציונלי אפשר להתקדם לשלב הבא.
לכל תגית יש כיום 3 מאפיינים:

  • שם
  • סלאג
  • תיאור

זה הזמן להפיק מהם את המירב. כתיוג פונקציונלי אנחנו מניחים שבתגיות ייעשה שימוש רב לתצוגה בבלוג ולכן הגיע הזמן להרים להן דף תבנית. לדף התבנית קוראים tag.php

בעקרון בלא מעט תבניות כיום הוא כבר קיים, אם הוא לא קיים בשלכם, העתיקו את index.php ושנו את שמו.

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

ברגע שהוספנו, נוסיף לעמוד  tags.php את הקוד הבא ישר לפני הלולאה

1
2
echo "<h2>".single_tag_title()."</h2>\n";
echo "<p>".tag_description()."</p>\n";

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

  • מעתיקים את single.php לקובץ בשם glossary.php
  • מוסיפים בראשית הקובץ הערת תבנית:
  • 1
    2
    3
    4
    5
    < ?
    /*
     * Template name: Glossary
     */

    ?>
  • מחליפים את הלולאה בקוד הבא:
    1
    2
    3
    4
    5
    6
    7
    8
    $tags = get_tags();
    if ($tags) {
        echo "<dl>\n";      
        foreach ($tags as $tag) {
            echo "<dd><a href='".get_tag_link($tag->term_id)."' title='{$tag->count} posts'>{$tag->name}</a></dd><dd>{$tag->description}\n";
        }
    }
    </dd></dl>
  • יוצרים עמוד המשתמש בתבנית Glossary שיצרנו

025 שימוש מושכל בתגיות וורדפרס נהניתם ? הרשמו לעדכוני RSS !

קיצורי דרך בוורדפרס

לוורדפרס יש מנגנון מובנה בשם shortcode המנגנון הזה נכנס החל מגרסה 2.5

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

  • הוספת תמונת קטגוריה לפוסטים
  • הוספת לוגו לסדרת פוסטים (למשל סדרת "בלוג עצמאי" שלי)
  • הכנסת פרסומות גוגל באמצע הפוסט במיקום לפי בחירתנו
  • יצירת ממשק הורדות יפה

ויש עוד אינסוף דוגמאות.

למה הכוונה ב-shortcode?

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

למעשה יש 4 סוגים של קיצורי דרך בהם וורדפרס תומכת:

  1. הפשוט – [shortcode]
  2. בעל הפרמטרים – [shortcode data='abc']
  3. בעל התוכן – [shortcode]data data data[/shortcode]
  4. המשולב – [shortcode data='abc'] bla bla bla[/shotrcode]

רובנו מכירים את הממשק בעיקר בזכות תוספי נגני הוידאו השונים שמשתמשים בו.

אז איך משתמשים?

ההגדרה בוורדפרס של קיצורי דרך שכאלו היא ממש פשוטה

1
2
3
4
5
function mypic($atts) {
    return <img src="http://example.com/wordpress/wp-content/uploads/2009/08/mypic.jpg" alt="my picture" />
}

add_shortcode('[pic]', 'mypic');

הקוד למעלה יוסיף את התמונה mypic.jpg בכל מקום בטקסט בו יופיע הקיצור [mypic]

דוגמה נוספת בעלת שימוש בפרמטרים:

1
2
3
4
5
6
7
function pic_shortcode($atts) {
    extract(shortcode_atts(array(
        'alt' =&amp;gt; 'none'
            ), $atts));
    return "<img src="my-url" alt="$alt" />\n";
}
add_shortcode('[pic]', 'mypic');

והשימוש:
[pic alt='my alter ego']

דוגמה לשימוש עם תוכן:

1
2
3
4
5
6
7
8
9
function pic_shortcode($atts, $content='') {
    extract(shortcode_atts(array(
        'alt' =&amp;gt; 'none'
            ), $atts));
    return "<img src="my-url" alt="$alt" />
<div class="
text-over">$content</div>
\n"
;
}
add_shortcode('[pic]', 'mypic');

והשימוש:
[pic]התוכן שלי[/pic]

דוגמאות מהחיים:

תמונות לפי נושאים

נייצר את הקיצור הבא:
[משחקים]

1
2
3
4
5
6
7
function games_shortcode($atts) {
    extract(shortcode_atts(array(
        'alt' =&amp;gt; 'none'
            ), $atts));
    return "<img src="my-url" alt="$alt" />\n";
}
add_shortcode('[משחקים]', 'games_shortcode');

זה למעשה זהה לגרסה הראשונה שראינו
אבל מה אם יש לנו מספר נושאים שכאלו ?
הנה הפתרון
[subject type='משחקים']

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
function subject_shortcode($atts) {
    extract(shortcode_atts(array(
        'type' =&amp;gt; 'none'
            ), $atts));
    switch ($type) {
        case 'משחקים':
              $url='games-image-url';
              break;
        case 'עבודה':
              $url = 'work-image-url';
              break;
        case 'none':
              $url = '';
    }
    if (is_empty($url))
        return '';
    else
        return "<img src="$url" alt="$alt" />\n";
}
add_shortcode('[subject]', 'subject_shortcode');

הוספת מודעות גוגל

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function adsense_shortcode( $atts ) {
    extract(shortcode_atts(array(
        'format' =&amp;gt; '1',
         ), $atts));

    switch ($format) {
        case 1 :
            $ad = '<script type="text/javascript"><!--mce:0--></script>
              <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"><!--mce:1--></script>'
;
          break;
    }
    return $ad;
}

add_shortcode('adsense', 'adsense_shortcode');

הגעתם עד הנה ? מצויין.
שאלות, טענות, הארות – בתגובות.
מקווה שעזר.

עוד טקסטים בנושא:

025 קיצורי דרך בוורדפרס נהניתם ? הרשמו לעדכוני RSS !