כמתכנתי וורדפרס, קובץ הפונקציות הוא החבר הטוב ביותר שלכם, אתם תשתשו בו המון. למעשה הוא הקובץ שעושה את רוב העבודה הפונקציונאלית. למשל, במקרה הקודם שלנו, ראינו איך לחבר את הלוגו בhtml של ההאדר. אבל מי החליט שאנחנו רוצים את השימוש בלוגו הזה? (אנחנו תבנית נקיה תזכרו אנחנו מתחילים מאפס) ולכן היה עליי לעשות שימוש בפונקציה מובנית שתפעיל את יכולת הניהול של הלוגו. ללוגו יש הרבה פרמטרים שהוא מקבל . תוכלו לראות מה אני הגדרתי ולשנות בהתאמה לדרישה שלכם וכמו כן תוכלו לרשום ללא הגדרות כלומר ללא הפרמטר השני (המערך) וזה גם יעבוד כמובן
<?php
/*
=============
logo
==============
*/
add_theme_support( 'custom-logo', array(
'height' => 100,
'width' => 400,
'flex-height' => true,
'flex-width' => true,
'header-text' => array( 'site-title', 'site-description' ),
) );
?>
נקודות חשובות בעבודה על functions.php
- דוקומנטציה – חשוב מאוד לרשום מה פונקציה\הוק שלכם עושה. זה יקל עליכם בהמשך כי לעיתים קובץ זה הינו ארוך וגם בהרבה מקרים אתם תרצו להשתמש באותם פונקציונאליות באתרים אחרים אז יהיה לכם נוח לחזור להבין מה אתם צריכים לקחת לאתרים הבאים שלכם.
- קובץ functions יטען עם העלאת התבנית.
- כמובן שנקודות הראשונות קצת סותרות. אתם לא רוצים קובץ ענק של פונקיות שיטען ישר עם העלאת התבנית שלכם, גם הרבה מדריכים לא ממליצים להשתמש בקובץ זה לצורך משימות שאפשר לעשות כפלאגין(נדבר בהמשך). יש לזה הרבה היגיון אבל בכל זאת אתם תראו המון שימושים שעושים בקובץ הפונקציות בהרבה מהטוטוריאלים ברשת. בקיצור קובץ הפונקציות הוא מאד שימושי אבל לא להגזים איתו. בהמשך נראה מה לשים ומה לא.
קובץ הפונקציות – מה לא לעשות
- עדכונים של תבניות \ שינוי תבנית עלול למחוק לכם את התוכן בקובץ הפונקציות אז שימו לב לעשות גיבוי במידת הצורך
- לא להוסיף פונקציונאליות שאמורה להיות בתבניות שונות, במידה ותרצו להחליף תבנית הפוקציונאליות לא תמשיך אתכם אלא תהיה ספציפית לתבנית הנוכחית.
- ווידג'טים יהיה פחות מומלץ להוספה בקובץ זה , כנ"ל פוסט טייפים
אז מה כן עושים עם הקובץ הזה??
- יצירת תפריטים אפשר להגדיר בקובץ זה
- טעינה של מקורות חיצוניים הנחוצים ב<head>
- הוקים למניהם : לוגו, תמונת נושא לפוסטים ועוד…
- ניהול של תבניות ילד child themes
- פונקציות מקוסמות שאתם יודעים שאתם צריכים בהרצת התבנית וכן זה ייחודי לתבנית הזו
לסיכום
ניפגש עם קובץ זה עוד המון בכל שלבי העבודה על הפרויקט דוגמה שלנו. נתאה בפוסט הבא.





