כפי שניתן לראות בתגובות לפוסטים השונים אצלי בבלוג הוספתי הדגשה (על ידי צבע רקע) לתגובות שנכתבו על ידי.
אני עשיתי את השינויים ידנית בקוד, אבל יש שלושה תוספים שעושים אותם חצי אוטומטית.
תוסף אחד בשם comments custom display, השני Author Highlight והשלישי bm comment highlight
לרוע המזל שלושתם מצריכים עדיין שינויי קוד בתבנית ועל כן אני אישית לא רואה הבדל גדול בינם לבין השינוי הידני.
חשוב לי לציין לטובה את התוסף השלישי המצריך שינוי יחסית מינימלי בתבנית והכולל זיהוי של סוגים שונים של משתמשים. אם בכל זאת אתם רוצים להבין איך העסק עובד, ההסבר לפניכם.
התאוריה
על מנת להדגיש את התגובות של כותב הפוסט או מנהל הבלוג (עניין של הגדרה) צריך לדעת לזהות אותו ובמקרה שהוא כותב התגובה להוסיף (או להחליף) לה איזשהו class של css שישנה את העיצוב שלה בהתאם.
השינויים הנדרשים הם:
1. שינוי קוד בקובץ comments.php על מנת לזהות את כותב התגובה ולהוסיף את ה-class הרצוי
2. הוספת העיצוב עצמו בקובץ ה-css של התבנית.
איך עושים את זה
1. זיהוי כותב התגובה
הנחת הבסיס כאן היא שאנחנו מזהים את כותב התגובה ע"פ כתובת המייל שלו
ע"כ הקוד בו נשתמש יהיה:
[sourcecode language='php'] if ( get_the_author_email() == $comment->comment_author_email)
$myclass = ' author'; ?>[/sourcecode]
בקצרה: אנחנו בודקים אם כתובת הדוא"ל של המגיב זהה לזו של כותב הפוסט.
הפונקציה get_the_author_email מחזירה את כתובת המייל של כותב הפוסט ואילו המשתנה $comment->comment_author_email מכיל את כתובת המייל של המגיב, אם אלו זהות – נסמן את התגובה.
את שורת הקוד שלמעלה יש לשים בתוך לולאת התגובות לפני הדפסת איבר התגובה, כלומר לאחר השורה:
[sourcecode language='php'][/sourcecode]
2. הוספת הזיהוי לתגובה עצמה
בכל תבנית שהיא יש לנו רשימה של תגובות המיוצגות ע"י איברים זהים (li או div כתלות בתבנית) כל שעלינו לעשות הוא להוסיף לתגובות הללו את אפיון העיצוב החדש שלנו myclass
כלומר הקוד של ראשית התגובה יהפוך מהמקור:
[sourcecode language='php']
שימו לב שבמקרה שלפנינו כבר הייתה התייחסות לעיצוב התגובה ולכן רק הוספתי את העיצוב החדש, במקרים אחרים יתכן שיהיה צורך להוסיף את כל ההתיחסות כלומר:
[sourcecode language='php']class=""[/sourcecode]
3.הוספת העיצוב לקובץ העיצוב
זה החלק הפשוט. בסוף קובץ העיצוב (style.css) יש להוסיף את העיצוב החדש והשונה.
במקרה שלי ההבדל היה רק בצבע הרקע וע"כ נראה כך:
[sourcecode language='css'] .author { background-color: #D8E4FC } [/sourcecode]
ניתן כמובן להוסיף לכל העסק מאפיינים נוספים אחרים בהתאם לרצונכם.
17.4.08 עדכון: בהתאם להערה של רן וכיוון שהרעיון היה להדגיש את התגובות של כותב הפוסט (ולאו דווקא מנהל הבלוג) עשיתי חיפוש קטן, השינויים הדרושים בקוד שלמעלה הם:
1. החלפת דוא"ל כותב התגובה במזהה המשתמש שלו בבלוג
2. החלפת דוא"ל כותב הפוסט במזהה המשתמש שלו בבלוג
במקום הקוד:
[sourcecode language='php'] if ( get_the_author_email() == $comment->comment_author_email)
$myclass = ' author'; ?>[/sourcecode]
הקוד ייראה כך:
[sourcecode language='php'] if ( $post->post_author == $comment->user_id)
$myclass = ' author'; ?>[/sourcecode]
נהניתם ? הרשמו לעדכוני RSS !
ישנו שינוי נוסף שעשית אצלך בקוד של התבנית והוא לגבי ציטוטים שמופיעים בתוך הפוסט, אצלך הם מוצגים במסגרת אדומה על רקע אדום בהיר,
אשמח אם תוכלי להסביר כיצד זה נעשה, או אם מדובר בפלאג
זה נעשה ברמת ה-css
עיצבתי את ה-blockquote בצורה הבאה:
margin:12px 10% 20px 0;
padding:8px 6px 4px;
border:3px solid #ffb7ba;
background:#fff3f3;
width:80%
}
אה!.. כל כך פשוט!
תכעסי אם אשתמש בזה (בשינויים קלים של צבע וכו') גם בבלוג שלי?,
אני לא רוצה להעתיק את הסגנון ציטוט הזה בלי הסכמה שלך
כמובן שלא אכעס. תהנה
תודה
רציתי לדעת באיזה קובץ להוסיף את הקוד:
לאחר השורה:
ועוד משהו, במידה ואת עושה שינויים עם קודים, יהיה יותר נוח אם גם תסבירי, ואחר כך תעשי הוראות, פתח את הקובץ xxx שנמצא בתיקיה xxx ואז תרשמי, חפש את הקוד "קוד" והוסף מתחתיו את הקוד "קוד2"
בערך ככה
דוד, דווקא כתבתי שאת כל השינויים צריך לעשות בקובץ comments.php למעט אלו הקשורים לעיצוב ומבוצעים בקובץ style.css.
מעבר לכך, אני לא לחלוטין ממליצה לאנשים שאינם מספיק בקיאים בעריכת קוד לעשות שינויים כאלו בתבנית.
איפה נמצא הקובץ comment.php ? באיזו תיקיה ? של העיצוב שאני משתמש בו ? wp-admin ? יש כמה וכמה תיקיות שבהם נמצא הקובץ הזה.
אכן בתקיית העיצוב בו אתה משתמש
אם אני לא טועה comment.php הרלוונטי למקרה זה נמצא בתיקיה של התבנית שבה אתה משתמש לדוגמא
yourblogfolder/wp-content/themes/yourtheme/comment.php
כמובן שאת yourblogfolder ואת yourtheme אתה אמור להחליף בשמות המתאימים בהתאם לבלוג שלך
גם אני אני לחלוטין לא ממליץ לאנשים שאינם מספיק בקיאים בעריכת קוד לעשות שינויים כאלו בתבנית ואני הרבה פחות בקי מחנית
תודה רבה
דורון, בעבר ( וגם כיום מדי פעם ) יצא לי הרבה להתקין מודים במערכת פורום IPB, כלומר ibheb 1.3.
זוהי מערכת מתקדמת מאוד, היו לי לפעמים מודים שזמן ההתקנה היה בערך 30 דקות, והיו בערך 40 קבצים לערוך ולשנות.
סמוך עליי בעריכת קבצים =]
פשוט היא לא ציינה את המקום בו לערוך ולא בדיוק הבנתי =]
אין בעיה
אשתדל לפרט יותר בעתיד…
כיצד אוכל ליצור איתך קשר ? ( אני מעוניין לתרגם תוסף ואני רוצה לשאול אותך משהו )
עמוד "צרו קשר" בבלוג מכיל:
1. טופס יצירת קשר
2. כתובת מייל
ניתן להשתמש בכל אחד מהשניים
שלי הצבע יותר יפה. אז אני מדגיש אותי יותר יפה =)
סחטיין עלייך, גם אני חשבתי לפרסם איזה מדריכון על זה, אבל מי אמר זמן ולא קיבל?
פרצת אבטחה מסוכנת מאוד. טוב, לא מאוד, אבל בכל זאת מדאיג
בפוסט שמעולם לא כתבתי על העיצוב של הבלוג שלי ציינתי שהשימוש בכתובת אימייל לזיהוי המחבר כדי להדגיש תגובות יוצר פרצת אבטחה – כל מי שיכתוב את האימייל שלי, יקבל תגובה מודגשת. אותה פרצה בדיוק קיימת בגראבאטר – אם הייתי משתמש בשירות, כל מי שיגיב עם האימייל בכל בלוג שתומך בגראבאטארים שלי יקבל את התמונה שלי. לחלופין, אני יכול לקבל תמונה של כל משתמש בשירות שאני יודע את האימייל שלו
הפתרון הוא להשתמש במזהה המשתמש, שרק משתמשים רשומים שהזינו סיסמה מקבלים. כך, רק מי שיודע את הסיסמה ושם המשתמש לבלוג שלי יכול לקבל תגובה מודגשת:
class="<?php if (2== $comment->user_id) { echo 'mine'; } ?> comment"
(זה מתוך הנחה שאני לא משתמש בחשבון הניהול שנוצר בעת ההתקנה, ויצרתי לעצמי חשבון מוגבל שהמזהה שלו הוא 2. שימוש בחשבון הניהול זה סוג של פרצת אבטחה בפני עצמה.)
ואני מקווה שהקוד בתגובה הזו לא התרחבש לגמרי
הסבר קצת יותר קריא משלי לאותה סוגיה:
http://www.mattcutts.com/blog/highlight-author-comments-wordpress/
(מתייחס גם לסגנונות שונים לתגובות זוגיות/אי-זוגיות)
תודה על ההערה, הוספתי עדכון כך הקוד החדש עדיין גנרי אבל עובד על בסיס מזהה משתמש
כלומר במקום
יש לרשום:
?
ד"א, יש לך מספר שגיאות ( התפקששות מכתיבה מהירה במקלדת ) בעדכון
א) תוקן
ב) הוסבר יותר טוב (מקווה)
ג) כן
או, הפתרון הזה הוא מעולה – זה גם יסמן אותך כמחבר בכל הפוסטים הקודמים לפני האיימיל החדש
לאחר שאני מגיב, כל התגובות שנוספות אחריי מודגשות בצבע..
מה עושים ?
צריך לאפס את המשתנה myclass בתחילת הלולאה או לשנות את התנאי בצורה הבאה:
מה לגבי האוואטרים ? הרי גם בם יש את אותה פירצת אבטחה שהייתה כאן,
הרי גם הם מופיעים, אם אני לא טועה, לפי כתובת המייל שמוקלדת,
כלומר גם מהבחינה הזאת ייתכן ניצול לרעה והזדהות של אדם אחד בשמו של אדם אחר וכו' אם הוא יודע את כתובת המייל שלו? לא?
האם אפשר למנוע את זה באופן דומה?
תזכי למצוות =]
אכן עזרת לי מאוד.
דורון, אז יגנבו לך את האווטר אז מה קרה ? חח
אני מפחד שיזדהו ויגידו דברים בשמי
האוואטר זה רק בונוס..
חנית אחלה מדריך אבל לצערי לא הצלחתי לראות אתהתגובה שלי כמנהל הבלוג בצבע או מובלטת מתגובות אחרות.
מה יכולה להיות הבעיה?
יכולות להיות הרבה מאד בעיות. אם תפנה אותי למקום הרלוונטי (בו הטמעת את הקוד) אוכל לנסות לעזור).
הטמעתי אותו כמו שאמרת בקובץ COMMENTS וב STYLE
Hm, I am comfortable with this but nonetheless not fully sure, so i'm gonna research a little more.
I'm aware about this previously, but nevertheless there were several helpful bits which finished the picture for me personally, regards!