מדריך דרופל 7 – הגדרות שונות של view
אחרי שלמדנו ליצור view ראשוני, אנו נמשיך ללמוד על ההגדרות השונות של ה-view וכיצד ניתן להציבו במקומות שונים. יצירת view היא בעצם יצירה של רשימה כלשהי של תכנים שאותה אנו יכולים לסנן לפי סינונים שונים ומשונים – החל מסוג תוכן וכלה בטקסונומיה ובפרמטרים נוספים. ניתן לבצע סינונים כמעט לפי כל פרמטר. את הרשימה גם ניתן למיין באופן פשוט וקל לפי פרמטרים שונים וכן לקבוע לה כותרת ונתיב.
מה שיפה ב-view הוא שאנו יכולים ליצור אותו בכל מקום – כדף וגם כבלוק. בואו וניקח view מסוים וניצור אותו כבלוק!
נכנס לדף ה-views על ידי כניסה לפאנל הניהול לחיצה על בניה ואז על על views, אנו נגיע לרשימת כל ה-view שיש לנו באתר:
לחיצה על edit תיבא אותנו לדף העריכה של ה-view:
בראש הדף אנו יכולים לראות את כל סוגי התצוגה של ה-view, כרגע יש לנו סוג תצוגה אחד בשם page שהוא העמוד שלנו שניתן להכנס אליו באמצעות ה-path, אם נלחץ על Add נוכל להוסיף סוג תצוגה נוסף בשם block שיוצר לנו תיבה. לאחר היצירה, יתווסף לנו סוג תצוגה נוסף:
אם נשמור את ה-view וניגש אל תפריט התיבות, אנו נראה שנוספה לנו תיבה חדשה לרשימה שאותה ניתן להציב כמובן כמו כל תיבה אחרת – ותודו שזה מגניב.
לפעמים, יש דברים שאנו רוצים שיופיעו בתצוגת התיבה ולא יופיעו בתצוגת הדף של ה-view. מה עושים? אפשר באופן עקרוני ליצור view חדש עם ההגדרות שאנו רוצים ולהגדיר תיבה חדשה. אך יותר אלגנטי לבצע override ולהציב בתיבה הגדרות שונות משל הדף. בואו ונדגים. נניח שאני רוצה שלא יהיה לי pager בתיבה. כאשר אני בסוג תצוגה של תיבה אני אלחץ על Use Pager: full:
ייפתח לי חלון ובו אני יכול לקבוע שהשינוי יעשה אך ורק בנוגע לבלוק הזה:
אם אני אלחץ על Apply ואז אני אשמור, אני אראה שבתיבה שלי לא יהיה pager.
אנו יכולים ליצור בנוסף לדף ולבלוק גם feed שהוא בעצם RSS.
ניתוח הביצועים של views
view הוא בעצם מחולל שאילתות ואנו יכולים, אם אנו מבינים מספיק בתחום ה-MySQL לבדוק את השאילתות שהוא מבצע ולראות עד כמה הן יעילות. על מנת לבצע את זה, אנו צריכים ללחוץ על Setting בדף הראשי של המודול:
במסך האפשרויות אנו נגלול למטה עד שנמצא שני צ'קבוקסים :
נסמן אותם ונשמור. מעכשיו כל view שנבדוק (גם views קיימים) יציגו את השאילתא:
זו בעצם השאילתא שה-view מחולל, באמצעות שינוי בפילטרים ובפרמטרים נוספים אנו יכולים לשלוט בשאילתא. בסופו של דבר עם ה-view יהיה מסובך יותר, כך השאילתא תהיה מורכבת יותר ויקח יותר זמן, מן הסתם, על מנת להריץ אותה.
לאפשר למשתמשים לקבוע את ה-view
לפעמים אנו רוצים לתת לגולשים באתר (מוסמכים או לא) לקבוע כמה דברים בנוגע ל-view. למשל בואו ונחשוב על ארכיון באתר. לעתים המשתמשים ירצו לראות את ארכיון החדשות, או את ארכיון המאמרים או ארכיון של סוג תוכן אחר. באופן עקרוני אין לי שום מניעה ליצור כמה view – אחד לכל ארכיון. אבל אני יכול ליצור view רגיל ולתת לגולשים לקבוע איזה תוכן ה-view יציג. איך בדיוק? אני אגש ל-view שאני רוצה לפתוח אותו, אלך למקום שאותו אני רוצה לחשוף בפני הגולשים – במקרה הזה filter criteria ואלחץ על הפילטר שאותו אני רוצה שהגולשים יקבעו:
אחרי כן יפתח לי מסך ההגדרות של הפילטר, אני אלחץ על תיבת הסימון של Expose:
אני יכול לשנות את הלייבל שיהיה ליד הטופס ולהכניס עוד כמה הגדרות. לחיצה על Apply ואז שמירה של view. ואם אני אכנס לדף של ה-view אני אוכל לראות שיש שם שדה חדש שבאמצעותו אני יכול לקבוע את הפילטר!
כך בעצם אני יכול לבנות שדות חיפוש ומיון לתכנים שונים באתר שלי – כגון קניון וירטאולי, קטלוג, ארכיון ובעצם כל דבר שאני רוצה. ניתן לחשוף את הפילטרים, או את המיון ובעצם הרבה מאד פרמטרים נוספים ובכך לאפשר למשתמשים כוח רב ויכולת רבה בחיפוש אחר מידע באתר שלי.
תגובות בפייסבוק