בדצמבר שנה שעברה חלקנו עם הקהילה, מודול חדש הקרוי ajax slideshow. מודול זה כשמו כן הוא, מודול שייעודו לאפשר באופן פשוט ונוח הצגה של תכנים באמצעות שימוש בajax. לפני שהחלטנו לכתוב את המודול בעצמנו חקרנו לעומק את המודולים המוצעים (ניתן לראות השוואה בעמוד זה) ולהפתעתנו לא מצאנו מודול שענה על דרישות הלקוח. בתמצית אלו היו:
- יצירת מצגת המורכבת מסידרה של פריטי תוכן אשר נבחרים על ידי מנהל התוכן.
- יכולת שליטה בסדר ההופעה באופן נוח ופשוט
- יכולות ניווט כולל שימוש בלשוניות וכפתורי next, previous.
- יכולת לפרסם או להוריד מפירסום כל פריט במצגת
- שליטה על אפקטי המעבר ופרמטרים נוספים הקשורים באנימציה (משך המעבר, משך הופעת השקף וכו)
- הכי חשוב - זמן טעינת השקף הראשון קצר ואינו מושפע מכמות הפריטים שנכללים במצגת.
הדרישה האחרונה היא זו שעשתה את חיינו למעניינים יותר... תודות לה נולד המודול Ajax Slideshow.
ורסיה שניה של המודול שוחררה זה לא מכבר (פברואר השנה), מספר המשתמשים הולך ועולה בהדרגה ועוד היד נטויה. המון רעיונות איך להרחיב ומעט זמן... הסיפור הרגיל.
לכל מי שמעוניין להשתמש במודול ו\או לתרום קוד - אתם בהחלט מוזמנים. כיף לשתף קוד ועל אחת וכמה כשמדובר בקהילה המקומית.
צוות דופיניטי.
תודה רבה!
תודה רבה!
אמיר תייר | TIKKE בונים אתר דרכך
תודה! אקח אותו לסיבוב בקרוב.
תודה!
אקח אותו לסיבוב בקרוב.
מומחים באפיון, עיצוב ובניית אתרי דרופל | WGN Media
משהו שמעניין אותי לדעת אם אפשרי מבחינה אג'קסית
האם אפשר לשלוח ללקוח קוד אסינכרונית עם טריגר מסוים בלי שהוא הגיע עדיין לתוכן הנדרש?
אני אסביר. נניח אתה בפריט א. האם אפשר ברקע להביא כבר את פריט ב (ואולי גם את ג) כי סביר להניח שאליהם יגלוש המשתמש בקרוב?
הדבר שהכי מרגיש באג'קס זה העיגולים המסתובבים עד שהנתונים מגיעים.
אמיר
| פרקטיקול - בונים לך אתר דרופל | קורס דרופל! | עזרה מידית בקבוצה שלנו בפייסבוק! | מכללת קוד פתוח
למעשה זה כבר נעשה במודול...
התשובה היא בהחלט כן.
למעשה Ajax Slideshow משתמש במנגנון preloading שמבוסס על הרעיון הזה. כיון שslideshow מטיבו הוא מנגנון סדרתי וניתן לדעת בסיכויים טובים באיזה סדר יוצגו פריטי התוכן, המודול אינו ממתין לרגע בו יש צורך בפריט מסויים ואז מבצע את הקריאה האגאקסית אלא מראש טוען סדרתית את הפריטים הרלוונטיים באופן אסינכרוני.
לadmin יש יכולת לכבות מנגנון זה במידה והוא מעוניין בכך (advanced settings)
תציץ פנימה.
דופיניטי - פתרונות web
http://www.dofinity.com
תותח!
אין אין עליך...
| פרקטיקול - בונים לך אתר דרופל | קורס דרופל! | עזרה מידית בקבוצה שלנו בפייסבוק! | מכללת קוד פתוח
עכשיו שבוויוז 3 פאייג'ר הוא
עכשיו שבוויוז 3 פאייג'ר הוא גם פלאגין (הרבה לע"ז בתעתיק עברי...) -- אולי אפשר לממש את זה כסוג של פאייג'ר, וככה זה לא יעבוד רק על תוכן (node-centric)
הנה דוגמא למודל שעושה משהו שקצת דומה רעיונית -- http://drupal.org/project/views_infinite_scroll
אמתי -- חברת גיזרה
הנושא עלה.
ניתן לראות דיון בנושא כאן
דופיניטי - פתרונות web
http://www.dofinity.com
יש אופציה להצגת מספר הסלייד כלינק?
ראשית, אני יחסית חדש ב-drupal אבל ותיק מאוד בתחום התוכנה וה-web. כיף לראות שגם אנשים מהקהילה בארץ תורמים קוד, כל הכבוד!
אני מחפש מודול slideshow של תמונות, שמתחתיו יש פס של מספרים שהם קישורים לתמונות.
לדוגמא: slideshow עם 5 תמונות, אז מתחת לתמונה המתחלפת מעצמה תופיע השורה הבאה:
5 4 3 2 1
לחיצה על "3" תציג את התמונה השלישית, לחיצה על "4" תציג את התמונה הרביעית וכן הלאה.
האם זה אפשרי עם המודול הזה? אם לא, אשמח לשמוע אם מישהו מכיר כזה מודול.
בנוסף, ברצוני להפוך כל תמונה לקישור, כך שלחיצה על תמונה 1 תוביל לדף X, לחיצה על תמונה 2 תוביל לדף Y וכד'. מכירים דרך לעשות את זה?
תודה !
אפשרי
שתי התכונות הנדרשות בהחלט נתמכות. קח את המודול ל"נסיעת מבחן". שאלות בנושא כדאי לפרסם בqueue של הפרויקט בdrupal.org כדי שכלל קהילת המשתמשים תהנה מהתשובות. תודה על הפירגון ובהצלחה.
דופיניטי - פתרונות web
http://www.dofinity.com
מנסה את המודול
היום הורדתי את המודול וניסיתי אותו.
ראשית, אהבתי את העובדה שנוצר view דיפולטיבי מיד כשמתקינים את המודול, זה נותן תחושה מיידית לגבי התוצר.
א. כאשר אני לוחץ על אחד הטאבים אז מוצג ה-node הרלוונטי, אבל לאחר כמה שניות הוא מתחלף ב-node הבא. האם יש דרך לקנפג שכשאני לוחץ על הטאבים אז המצגת תעצור?
ב. אני די חדש כאן, ובעצם אני מנסה ליצור גלרית תמונות עם אפקט מצגת, שכל תמונה תהיה קישור לדף כלשהוא, ושתהיה גישה ישירה לכל תמונה במצגת ע"י לינקים ממוספרים.
לצורך הענין הגדרתי סוג תוכן חדש ("תמונה לדף הבית") והוספתי לו שדה image. את ה-view המקורי שבא עם מודול ה-slideshow שכפלתי ושיניתי את הפילטר כך שיציג את פרטי התוכן של הסוג החדש שהגדרתי, וב"שדות" הגדרתי את שדה ה-image שהוספתי... הגדרתי הצגה כבלוק והוספתי אותו ל-tpl. במצב הנוכחי מוצגות לי כל התמונות בבת אחת, ללא אפקט של מצגת. עשיתי משהו לא חוקי?
מעבר לכך, זאת נראית לי דרך מאוד מסורבלת להשיג את המטרה, אז כל הצעת יעול תתקבל בברכה. עזרה?...
תודה !
יותר פשוט
א. - כרגע אין תמיכה בתכונה מעין זו.
ב. - אין צורך לשכפל את הview. עליך להשתמש בview המקורי כך שיביא את אותו סוג תוכן שמציג את התמונות שלך. בגדול יש צורך בשתי פעולות:
1. התאמה של הפילטר בview כך שיביא רק את סוג התוכן המבוקש. למעט פילטר וsort חשוב לא לבצע שום שינוי נוסף ב-view
2. התאמה של הtpl של סוג התוכן הרלוונטי (זה שמציג את התמונות) כך שיציג אותן עם הלינק שהזכרת.
העמוד הזה נבנה באמצעות ajax_slideshow והוא מזכיר את מה שאתה מתאר.
דופיניטי - פתרונות web
http://www.dofinity.com
התקדמות...
תודה על התשובה המהירה !
נשארתי עם ה-view המקורי ושיניתי את הפילטר שיביא רק את סוג התוכן שיצרתי. הוספתי display של בלוק כי אני רוצה לשבץ את הגלריה במיקום ספציפי בדף עם אלמנטים נוספים. ב-tpl של הבלוק החלפתי את השורה הזאת:
<?phpprint $block->content
?>
בשורה שמדפיסה את השדות הר"מ בצורת לינק:
print '<a href="' . $node->field_node_url[0]['value'] . '">' . $node->field_homepage_img[0]['view'] . '</a>';']וכעת לא מוצג כלום בגלריה.
לדעתי הבעיה כאן שלא קיים אובייקט node$ ב-tpl של הבלוק, אבל לא מצאתי איך אפשר להציג ערכים של שדות cck מתוך ה-node בתוך הבלוק.
רעיונות למישהו?
התמונות לא מוצגות
אחרי שלא הצלחתי להציג את הגלריה בתוך בלוק אז נשארתי עם התצוגה הדיפולטיבית, הגדרתי tpl ל-node לפי סוג התוכן שיצרתי, והכל נראה מצויין במצגת המוגדרת מראש (/domain/slideshow-front). כעת, ברצוני להציג את הגלריה במיקום מסויים בדף שלי. הוספתי את הקוד הבא ל-tpl של ה-node הרלוונטי:
<?php$view = views_get_view('ajax_slideshow_view');
print $view->execute_display('default', $args);
?>
כרגע במצגת אני רואה רק את מספרי הטאבים של המצגת ו-bullets של הרשימה, ולא רואה את תוכן ה-node במצגת.
חשוב לציין, את אותה גלריה אני רואה מצויין ב-slideshow-front כולל תוכן ה-node שלי.
רעיונות לגבי מה אני עושה לא טוב?
אתה כמעט שם
שילוב של שימוש בבלוק + שינוי הtpl של הnode יספק לך את מבוקשך (אם הבנתי נכון). השינוי הנוסף שהכנסת בtpl של node מיותר.
פשוט מקם את הבלוק המקורי שמוצע על ידי המודול היכן שאתה מעוניין ושלוט בתוכן הslide על ידי שינוי הtpl של הnode.
דופיניטי - פתרונות web
http://www.dofinity.com
מה ההבדל מבחינת תצוגה לגולש...
בין העמוד שנתת כדוגמא לבין שימוש ברכיב views_slideshow "רגיל"? רק זה שזה עולה יותר מהר כי לא צריך לחכות לכל התמונות? אם התשובה חיובית, אז בין כה וכה רואים את הטקסטים מייד, לפני התמונות, אז חוץ מהסטטוס בר של הדפדפן, האם הגולש יראה הבדל למעשה?
| פרקטיקול - בונים לך אתר דרופל | קורס דרופל! | עזרה מידית בקבוצה שלנו בפייסבוק! | מכללת קוד פתוח
חווית משתמש
תמונות הן חלק בלתי נפרד מהטקסט שמלווה אותן כשבונים אתר עם חווית משתמש מיטבית. אי לכך טקסט שמופיע בslideshow מבלי שיופיעו תמונות משמעו חויה שונה לגמרי (עד כדי אי הבנה של המסר).
כיון שהשימוש בajax רק משפר את חווית המשתמש ואינו מהווה חסרון בשום אספקט, השאלה היא למה להשתמש במודולים שאינם עושים שימוש בטכנולוגיה זו.
דופיניטי - פתרונות web
http://www.dofinity.com
לא הסברתי עצמי כראוי אולי
"תמונות הן חלק בלתי נפרד מהטקסט שמלווה אותן כשבונים אתר עם חווית משתמש מיטבית. אי לכך טקסט שמופיע בslideshow מבלי שיופיעו תמונות משמעו חויה שונה לגמרי" - התמונה הראשונה מופיע בכל מקרה עם הטקסט.
"כיון שהשימוש בajax רק משפר את חווית המשתמש ואינו מהווה חסרון בשום אספקט, השאלה היא למה להשתמש במודולים שאינם עושים שימוש בטכנולוגיה זו" - אני כמובן הייתי בין הראשונים לברך, אבל לרכיבים עם יותר משתמשים ויותר זמן "על הכביש" יש היתרון שלהם, בטח תסכים.
| פרקטיקול - בונים לך אתר דרופל | קורס דרופל! | עזרה מידית בקבוצה שלנו בפייסבוק! | מכללת קוד פתוח