קבוצות שדות חוזרים עוזרות לך לבנות בקלות אתרים מתקדמים. חשוב מכך, הן מקלות על ניהול התוכן בלי להסתכן בשבירת העיצוב בצד הלקוח.
מהן קבוצות שדות חוזרים
שדה מותאם אישית מאפשר לך להוסיף פיסת מידע אחת לפוסט, לעמוד או לסוג תוכן מותאם אישית. קבוצת שדות חוזרים מאפשרת לך להוסיף רשימות של מידע. אפשר לחשוב על קבוצות שדות חוזרים כעל טבלה, המכילה שורות עבור כל אחד מהפריטים ועמודות עבור השדות השונים שלהם.
לדוגמה, הנה קבוצת שדות חוזרים, שהגדרנו כדי להציג גלריה בצד הלקוח.
בדוגמה זו, ה"גלריה" היא הרשימה וכל אחד מהפריטים בגלריה דורש מספר פיסות מידע כדי להיות מוצג (תמונה, תיאור וקישור אופציונלי).
כיצד קבוצות שדות חוזרים עוזרות בבניית אתרים
כאשר אתה משתמש בקבוצות שדות חוזרים, אתה מפריד לחלוטין בין עריכת התוכן לבין האופן שבו התוכן מופיע בצד הלקוח. עורכים ישתמשו במבנה הטבלה באזור הניהול של WordPress, המציג את השדות השונים עבור כל פריט. קבוצת השדות החוזרים מוצגת בצד הלקוח באמצעות תבנית.
הדבר מספק מספר יתרונות גדולים:
- עורכים יכולים להוסיף, לשנות ולהסיר פריטים בלי שתצטרך לדאוג משבירת האתר בצד הלקוח.
- אתה יכול להציג בדיוק את אותו מידע, או חלקים ממנו, בדרכים שונות.
- הרבה יותר קל לתרגם את זה. המתרגמים שלך עורכים רק את הטקסטים, בלי לגעת בעיצובים עדינים.
תוספים שיוצרים קבוצות שדות חוזרים
ל־WordPress אין קבוצות שדות חוזרים. עם זאת, ישנם תוספים שייצרו אותן עבורך.
התוסף המוכר ביותר להגדרת קבוצות שדות חוזרים הוא ACF (Advanced Custom Fields). הגרסה החינמית אינה מציעה קבוצות שדות חוזרים, אך תוכל לקנות את התוסף הנלווה לשדות חוזרים.
קבוצות שדות חוזרים מגיעות גם ל־Toolset (זמינות כעת בגרסאות בטא). Toolset מגיע מאותו צוות שמפתח את WPML, כך שכל מה שאתה בונה עם Toolset הוא Multilingual Ready (מוכן לאתרים רב-לשוניים) מעצם התכנון שלו.
הגדרה ושימוש בקבוצות שדות חוזרים
קבוצות שדות חוזרים ב־Toolset וב־ACF נראות דומות מאוד באזור הניהול של WordPress.
כך תוכל להגדיר קבוצת שדות חוזרים ב־Toolset ולהשתמש בה לעריכת תוכן:
הצגת קבוצות שדות חוזרים בעמודים ובתבניות
לאחר שיצרת את קבוצות השדות החוזרים באזור הניהול של WordPress, סביר להניח שתרצה להציג אותן בצד הלקוח של האתר.
כאשר אתה מעצב את האופן שבו קבוצת השדות החוזרים מופיעה בצד הלקוח, אתה יוצר תבנית אחת, שבה WordPress ישתמש עבור כל הפריטים החוזרים. אין צורך לשכפל את העיצוב שלך עבור כל פריט בקבוצה.
ACF ו־Toolset נוקטים גישות שונות מאוד גם בנושא זה.
ACF מספק PHP API עשיר להוספת שדות לתבניות. תצטרך לערוך את התבנית האחראית לסוג התוכן ולקרוא לפונקציות שמציגות את קבוצות השדות. לשם כך, עליך להיות בעל הבנה בסיסית ב־PHP וב־HTML. ראה את הסעיף "Template Usage" בעמוד Repeater Field של ACF לקבלת דוגמאות.
ל־Toolset יש גם PHP API שבו תוכל להשתמש, אך המשיכה הגדולה של Toolset היא שאתה יכול לעצב תבניות בלי לכתוב PHP, באמצעות בלוקים או שורטקודים. ב־Toolset, תצטרך ליצור תצוגה שתציג את קבוצת השדות החוזרים. תוכל להוסיף תצוגה זו לכל עמוד או תבנית.
תצוגה דינמית עבור קבוצות שדות חוזרים
מכיוון שאתה מציג את קבוצת השדות החוזרים באמצעות קוד מסוים, תוכל לעצב עבורה תצוגות דינמיות. לדוגמה, תוכל להוסיף פילטרים, עימוד ולוגיקה מותנית.
נניח שדוגמת הגלריה שלנו צריכה לכלול קישורים לפריטים, אך הם אופציונליים. כאשר לפריט בגלריה יש כתובת URL של יעד, נציג קישור. אם נבנה זאת בעזרת ACF, נכתוב קוד PHP שבודק את השדה הזה ופולט את הקישור באופן מותנה. Toolset הופך את זה להרבה יותר קל, באמצעות הבלוק המותנה שלו. בדרך זו, נוכל לבחון את הערכים של השדות בקבוצה ולהציג אלמנטים בהתאם לתנאים.
כיצד לתרגם קבוצות שדות חוזרים
גם ACF וגם Toolset תואמים ל־WPML. עבור ACF, בנינו תוסף מקשר בשם ACFML (ACF Multilingual). תוכל ללמוד כיצד להשתמש בו בעמוד התיעוד שלנו עבור ACF Multilingual.
Toolset תואם ל־WPML ללא הגדרות נוספות, וללא תוספים מקשרים נוספים. כתבנו מדריך שלם על תרגום אתרי Toolset בעזרת WPML. ישנו גם עמוד קצר שמלמד כיצד לתרגם קבוצות שדות חוזרים.
מכיוון שאנו מציגים את קבוצות השדות החוזרים בצד הלקוח באופן דינמי, כל שעלינו לעשות הוא לתרגם את הערכים שלהן. הפלט ייבנה "אוטומטית". הוא יציג את המקור אם אין תרגום, או טקסטים מתורגמים ברגע שנתרגם.