דף הבית » טריקים וטיפים

שימוש בתגיות HTML בפרופיל משתמש

12 בינואר 2010 | מאת רמי | תגובה אחת | תגיות: , , ,

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

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

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

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

דרכים להתגבר על הבעיה

הקישור לאתר הכותב:

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

שימוש בשדות מיוחדים:

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

שימוש בפילטרים:

הדרך הפשוטה ביותר לפתרון הבעיה, היא שימוש בפילטר יעודי. כאמור, בברירת מחדל הוגדרה פונקציה שמפשיטה תגיות HTML מהמידע הביוגרפי. פונקציה זו עוברת דרך פילטר וניתן לכבות אותה תוך ביטול הפילטר. ניטרול הפונקציה יבוצע תוך הזנת הקוד הבא לקובץ functions.php :

remove_filter('pre_user_description', 'wp_filter_kses');

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

מאת רמי

אחראי על אתר וורדפרס בעברית ועל תרגום ושחרור גרסאות וורדפרס בעברית. מפתח ליבה, בכל גרסה החל מגרסה 2.8, מפתח מוביל בגרסה 4.4 ובגרסה 4.6. מספק שירותי פיתוח אתרים, פיתוח תוספי וורדפרס לסטרטאפים ופיתוח כלים למפתחי וורדפרס - GenerateWP.com.

תגובה אחת »

  • רמי כותב :

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

    בגרסאות וורדפרס אחרי 2.8 העזרו בקוד הזה:

    remove_filter('pre_term_description','wp_filter_kses');

    בגרסאות וורדפרס לפני 2.8 העזרו בקוד הזה:

    remove_filter('term_description','wp_kses_data');

הוסף תגובה !

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

תגיות HTML מורשות לשימוש:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>