מדריך דרופל 7 – הגדרות שונות של view

‏ • Internet Israel

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

מה שיפה ב-view הוא שאנו יכולים ליצור אותו בכל מקום – כדף וגם כבלוק. בואו וניקח view מסוים וניצור אותו כבלוק!

נכנס לדף ה-views על ידי כניסה לפאנל הניהול לחיצה על בניה ואז על על views, אנו נגיע לרשימת כל ה-view שיש לנו באתר:

image

לחיצה על edit תיבא אותנו לדף העריכה של ה-view:

image

בראש הדף אנו יכולים לראות את כל סוגי התצוגה של ה-view, כרגע יש לנו סוג תצוגה אחד בשם page שהוא העמוד שלנו שניתן להכנס אליו באמצעות ה-path, אם נלחץ על Add נוכל להוסיף סוג תצוגה נוסף בשם block שיוצר לנו תיבה. לאחר היצירה, יתווסף לנו סוג תצוגה נוסף:

image

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

לפעמים, יש דברים שאנו רוצים שיופיעו בתצוגת התיבה ולא יופיעו בתצוגת הדף של ה-view. מה עושים? אפשר באופן עקרוני ליצור view חדש עם ההגדרות שאנו רוצים ולהגדיר תיבה חדשה. אך יותר אלגנטי לבצע override ולהציב בתיבה הגדרות שונות משל הדף. בואו ונדגים. נניח שאני רוצה שלא יהיה לי pager בתיבה. כאשר אני בסוג תצוגה של תיבה אני אלחץ על Use Pager: full:

image

ייפתח לי חלון ובו אני יכול לקבוע שהשינוי יעשה אך ורק בנוגע לבלוק הזה:

image

אם אני אלחץ על Apply ואז אני אשמור, אני אראה שבתיבה שלי לא יהיה pager.

אנו יכולים ליצור בנוסף לדף ולבלוק גם feed שהוא בעצם RSS.

ניתוח הביצועים של views

view הוא בעצם מחולל שאילתות ואנו יכולים, אם אנו מבינים מספיק בתחום ה-MySQL לבדוק את השאילתות שהוא מבצע ולראות עד כמה הן יעילות. על מנת לבצע את זה, אנו צריכים ללחוץ על Setting בדף הראשי של המודול:

image

במסך האפשרויות אנו נגלול למטה עד שנמצא שני צ'קבוקסים :

image

נסמן אותם ונשמור. מעכשיו כל view שנבדוק (גם views קיימים) יציגו את השאילתא:

image

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

לאפשר למשתמשים לקבוע את ה-view

לפעמים אנו רוצים לתת לגולשים באתר (מוסמכים או לא) לקבוע כמה דברים בנוגע ל-view. למשל בואו ונחשוב על ארכיון באתר. לעתים המשתמשים ירצו לראות את ארכיון החדשות, או את ארכיון המאמרים או ארכיון של סוג תוכן אחר. באופן עקרוני אין לי שום מניעה ליצור כמה view – אחד לכל ארכיון. אבל אני יכול ליצור view רגיל ולתת לגולשים לקבוע איזה תוכן ה-view יציג. איך בדיוק? אני אגש ל-view שאני רוצה לפתוח אותו, אלך למקום שאותו אני רוצה לחשוף בפני הגולשים – במקרה הזה filter criteria ואלחץ על הפילטר שאותו אני רוצה שהגולשים יקבעו:

image

אחרי כן יפתח לי מסך ההגדרות של הפילטר, אני אלחץ על תיבת הסימון של Expose:

image

אני יכול לשנות את הלייבל שיהיה ליד הטופס ולהכניס עוד כמה הגדרות. לחיצה על Apply ואז שמירה של view. ואם אני אכנס לדף של ה-view אני אוכל לראות שיש שם שדה חדש שבאמצעותו אני יכול לקבוע את הפילטר!

image

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

תגיות: , , ,

רן בר-זיק

מתכנת PHP מנוסה ובעל ידע רב בפיתוח לאינטרנט על בסיס LAMP. מומחה במערכות דרופל, ג'ומלה ו-וורדפרס. שולט היטב בכל מה שקשור לפרונט אנד: JavaScript: jQuery ו-MooTools,ActionScript 2/3 וכמובן HTML 5 + CSS 3.אינטרנט ישראל: www.internet-israel.com

תגובות בפייסבוק