חיפוש ]

הצגת תגובות אחרונות באתרי וורדפרס ללא תוסף

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

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

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

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

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

פונקציה להצגת תגובות אחרונות

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

/**
 * Show Recent Comments
 *
 * @author Roee Yossef
 *
 * @param string/integer $no_comments
 * @param string/integer $comment_len
 * @param string/integer $avatar_size
 *
 * @echo string $comm
 */
function sv_recent_comments($no_comments = 5, $comment_len = 100, $avatar_size = 66) {

	$comments_query = new WP_Comment_Query();
	$comments = $comments_query->query( array( 'number' => $no_comments ) );

	$comm = '<div class="sv-recent-comments">';
	if ( $comments ) : foreach ( $comments as $comment ) :
		$comm .= '<li>' . get_avatar( $comment->comment_author_email, $avatar_size );
		$comm .= '<a class="author" href="' . get_permalink( $comment->post_ID ) . '#comment-' . $comment->comment_ID . '">';
		$comm .= get_comment_author( $comment->comment_ID ) . ':</a> ';
		$comm .= '<p>' . strip_tags( mb_substr( apply_filters( 'get_comment_text', $comment->comment_content ), 0, $comment_len ) ) . '</p></li>';
	endforeach; else :
		$comm .= 'אין תגובות';
	endif;

	$comm .= '</div>';

	echo $comm;
}

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

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

sv_recent_comments();

עיצוב אלמנט התגובות האחרונות

נשאר רק לעצב את התגובות האחרונות ולשם כך הוספתי קלאס בשם sv-recent-comments בו תוכלו להשתמש. אתן לכם לדאוג לעיצוב אך הנה CSS פשוט להתחיל ממנו:

.sv-recent-comments > li {
    list-style-type: none;
}

.sv-recent-comments > li > a {
    font-weight: 700;
}

.sv-recent-comments .avatar {
    float: right;
    clear: both;
    margin-left: 20px;
}

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

רועי יוסף
רועי יוסף

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

1 תגובות...
  • חפציה 7 אוקטובר 2019, 22:18

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

תגובה חדשה

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