תקציר המאמר:
באתר aniBOOm יושמה בהצלחה שיטה חדישה ויעילה יותר להפצת RSS מותאם אישית. המאמר מתאר כיצד יושמה שיטה זו באתר aniBOOM, ומסביר כיצד ניתן ליישם שיטה זו בכל אתר. בנוסף מציג הכותב טיפים לטיפול בנושאים customized themes – התאמת הויזואליה של הדף על ידי המשתמש וקיצור כתובות, המתבססים על הניסיון שנרכש בפיתוח האתר.
|
|
|
|
על אודות aniBOOM
|
|
aniBOOM הוא אתר Web 2.0 ייחודי, המכיל אלפי אנימציות מדהימות שיצרו אנימטורים מכ-70 מדינות ברחבי העולם. האתר הוקם על ידי שלושה יזמים: אורי שנער, לשעבר נשיא זכיינית ערוץ 2 "קשת", אברהם פרחי, מנכ"ל שפ"מ (החברה המוכרת זמן פרסום בקול ישראל) ורוני אורן, ראש החוג לאנימציה בבצלאל ובשיתוף עם חברת Netwise, שליוותה את הקמת האתר החל משלב הרעיון ועד לשלבי האפיון והפיתוח, וממשיכה ללוות אותו בפיתוחים מקוריים נוספים. מטרתו העיקרית של האתר: לשמש בימה לאנימטורים מקצועיים ולחובבי אנימציה ולחשוף את הגולשים לחוויה סמי-טלוויזיונית, הכוללת יצירת סרטי אנימציה ושיתוף עם גולשים אחרים.
|
|
|
|
במסגרת הפיתוח של האתר יושמה שיטה חדשה להפצת RSS, המוצגת כאן. כמו כן יושמו באתר aniBOOM טכניקות מעניינות לטיפול בהתאמת הוויזואליה של הדף על ידי המשתמש (customized themes) ושיטה לקיצור כתובות והם מוצגים כטיפים העשויים לסייע למפתחים נוספים.
|
|
|
|
Custom Made Feed
|
|
כפי שניתן לראות באיור הבא, אתר aniBOOM כולל לינקים ל-RSS-ים, מהסוג השכיח:
|
|
|
|
|
|
|
יצירת RSS בשיטה המקובלת
|
|
ניתן היה להשתמש בשיטה הישנה והמוכרת של יצירת קבצי RSS סטטיים (במקרה של אתר aniBOOM מדובר ב- 12 קבצים פיזיים) כשכל הקבצים קבועים לכל משתמש. במקרה והתוכן הוא יחסית דינמי נצטרך גם לדאוג לסקריפט כלשהו שיעדכן את הקבצים.
|
|
|
|
שיטה חדשה ליצירת RSS מותאם אישית
|
צוות הפיתוח של Netwise יישם באתר aniBOOM דרך אחרת, יעילה יותר - יצירת קובץ אחד (קובץ פיזי אחד, בוירטואלי מדובר ביותר) בצורה הבאה:
ניצור קובץ aspx ונקבע את סוג ה-Response שלו כ-xml:
|
|
|
|
|
|
|
לשיטה זו מספר יתרונות:
|
|
|
אין צורך בסקריפט
|
|
|
אין צורך בתחזוקה של כל הקבצים
|
|
|
מתקבל RSS המותאם אישית לכל משתמש, כפי שניתן לראות בצילום המסך הבא:
|
|
|
|
|
|
|
|
כאן המשתמש יכול לבחור את התוכן, המיון, זמנים ומספר הרשומות שיחזרו.
|
|
|
|
השוואה בין השיטה הישנה והשיטה החדשה
|
|
בטבלה הבאה ניתן לראות השוואה בין השיטה הישנה לשיטה שיושמה באתר aniBOOM:
|
|
|
|
|
השיטה הישנה
|
השיטה החדשה
|
|
מספר קבצים ליצירה
|
כמספר קבצי ה-rss
|
1
|
|
מספר קבצים לתחזוקה
|
כמספר קבצי ה-rss
|
1
|
|
סקריפט לעדכון
|
צריך
|
לא צריך
|
|
תוכן מותאם אישית
|
לא
|
כן
|
|
|
|
|
טיפים נוספים ליצירת RSS
|
|
1.לצורך יצירת ה-RSS ניתן להשתמש ב-DLL -(http://www.rssdotnet.com) RSS.NET חינמי (open source) הכולל אובייקטים מוכנים שיכולים ליצור לנו RSS ולידי (חוקי).
|
|
|
|
2. ניתן לצפות בסרטים ב-RSS READER על ידי item.Media = new RssMediaDesc();. בצורה זו ה-RSS READERS של גוגל ויאהו יציגו אותם כסרטים, במקום להציג רק את הנתונים אודות אותם סרטים.
|
|
|
|
התאמה אישית של המאפיינים הויזואליים של הדף-Customized Themes
|
|
נניח ואנו רוצים לאפשר למשתמש לשלוט בויזאליות של דף, כפי שניתן לראות בצילום המסך הבא מאתר aniBOOM. כיצד נאפשר זאת?
|
|
|
|
|
|
|
ניתן לעשות זאת באמצעות דרך מאוד פשוטה והיא יצירת קובץ css דינמי.
|
|
|
|
ניצור דף aspx כשסוג ה-response שלו יהיה CSS (שמו בדוגמה שלהלן - ThemeFlyStyles.aspx):
|
|
|
|
|
|
|
ואת הפרמטרים (צבעי הפונט, רקעים וכד') נשלח ב-request:
|
|
|
|
|
|
|
לקביעת תמונה כרקע ניצור css class כזה:
|
|
|
|
|
|
|
מה שנותר לנו למעשה בקובץ ה-aspx שלנו (example.aspx):
|
|
1. ליצור לינק לקובץ ה-CSS הדינמי:
|
|
|
|
|
2. להשתמש ב-css classes המוגדרים בקובץ ה-CSS הדינמי:
|
|
|
|
|
לסיכום, כך נראים הקבצים:
|
|
|
|
|
|
|
|
|
|
קיצור כתובות – isapi filter
|
באתר aniBOOM עלה הצורך לתת לדפים כתובת וירטואלית שונה מהכתובת פיזית קיימת. ישנם מקרים רבים בהם כדאי ליישם קיצור כתובות - דבר זה תורם לנוחות הגולשים ובעיקר לאינדוקס יעיל יותר למנועי החיפוש.
ברצוני להמליץ על מוצר מאוד פשוט וזול יחסית, אותו יישמנו בהצלחה באתר aniBOOM –
http://www.isapirewrite.com
|
|
|
|
התקנת התוכנה
|
בשלב הראשון יש להתקין את התוכנה וזאת באמצעות הפעלת קובץ התקנה פשוט. לרוב תותקן התוכנה תחת:
C:\Program Files\Helicon\ISAPI_Rewrite
|
|
|
|
קינפוג התוכנה
|
|
כדי לקנפג את הכתובות אותן נרצה לקצר, ניגש לקובץ הקונפיגורציה: httpd.ini, ושם נוסיף שורת קינפוג בפורמט הבא:
|
|
RewriteRule ‘new virtual url’ ‘old physical url’
|
|
לדוגמה:
|
RewriteRule /Aniboom/boomzones/(.*)
/Aniboom/Pages/Application/BoomZone/MyBoomZone.aspx?name=$1 [L]
|
|
|
ניתן לראות שאת הכתובת החדשה ניתן לתאר אפילו בעזרת regular expression, כאשר כאן $1
יתורגם ל-(*.) וכל שאר הכתובת הישנה תתורגם לכתובת החדשה.
בעזרת מוצר זה ניתן לבצע פעולות נוספות כמו חסימת קבצים, יצירת headers לקבצים ועוד.
|
|
|
|
ומה לגבי ביצועים?
|
|
בוודאי תרצו לדעת מה קורה לביצועים (performance) בעת השימוש במוצר הזה. מהניסיון שלנו אתם אין מה לחשוש, וזאת מכיוון שהמרות הקבצים מתבצעות ברמת ה-IIS וזה מבטיח ביצועים גבוהים וזמן ריצה קצר.
|