דרופל

דרופל (באנגלית: Drupal) היא מערכת ניהול תוכן חופשית המאפשרת בנייה וניהול של אתרי אינטרנט. נחשבת לאחת משלוש המערכות החינמיות הנפוצות לניהול תוכן, לצד וורדפרס וג'ומלה. היא מספקת לבעלי אתרים ממשק לניהול עצמי של מבנה האתר ותכניו. לבוני אתרים מספקת דרופל שילוב של רכיבי תוכנה מן המוכן ומערכת כללים המסדירים את הפעולה בין הרכיבים השונים. תמיכה טכנית למשתמשים חדשים וותיקים כאחד בפורומים באתר דרופל העולמי, באתר DrupalAnswers (זירת שאלות ותשובות מקוונת), בקבוצות פייסבוק שונות ועוד. בישראל קהילת משתמשים מגוונת הנותנת תמיכה קהילתית באתר הקהילה הישראלי או בפייסבוק בקבוצת דרופל ישראל. דרופל היא תוכנה חופשית וכולם יכולים להורידה, להתקינה ולהשתמש בה ללא תשלום תחת הרישיון הציבורי הכללי של גנו (GNU). כיום, פועלים באמצעות דרופל מאות אלפי אתרים מסוגים שונים; החל מאתרים ארגוניים פורטלים, ואתרים חברתיים, ועד לאתרים אישיים כגון של גופים אידאולוגיים או עסקים קטנים ובינוניים. על אף שבתחום בניית האתרים נהוג להדגיש את קלות הבנייה והניהול ללא קוד, היתרון היחסי של דרופל הוא דווקא בתשתית ובכלים שהיא מציעה למפתחים (כלומר בוני אתרים בעלי ידע בתכנות), ואכן, בתחילת דרכה יועדה דרופל בעיקר למתכנתים; עם זאת, מגמה זו הולכת ופוחתת ובכל גרסה שיוצאת, התוכנה מונגשת יותר גם לציבורים נוספים כגון מעצבי אתרים, מנהלי אתרים אנשי שיווק, כותבים ועורכי תוכן ועוד. כמו עם CMS אחרות, הורדה, התקנה והפעלה בשיטת "עשה זאת בעצמך" אמנם אפשרית, אבל דורשת נכונות להשקיע זמן ברכישת מספר מיומנויות יסוד, וכן בעיקר כדי להתאים את האתר לצרכים הספציפיים. Drupal נוצרה על ידי Dries Buytaert בשנת 2000 ובשנת 2003 עלה האתר הרשמי לאוויר. התוכנה משתכללת באופן תמידי בהתאם לפיתוחים שונים בתחומי המחשוב והתכנות האינטרנטי תוך הקפדה על הנגשת השימוש בה לציבורים רבים ככל הניתן. ארגון דרופל העולמי (Drupal association) הוא ארגון ללא מטרת רווח הדוגל בתוכנה חופשית ומפעיל את האתר הרשמי ואת הקבוצות הפתוחות השונות בהן מפותחים הרכיבים השונים. ישנם ארגונים נוספים כגון ארגון אקווייה (Acquia) המקדמים שימוש בדרופל ומספקים תמיכה לארגונים העובדים עם התוכנה. נהוג להתייחס לתכנים המגיעים עם חבילת ההתקנה כגון רכיבים (מודולים), ערכות עיצוב וכו' כתכני "ליבה" - Core. הליבה מכילה אוסף של תכונות, קבצים וכללים המהווים את התוכנה עצמה. מודולים הכלולים בחבילת הליבה מאפשרים למשל הקמת בלוג תוך-אתרי, אפשור תגובות לדפים ופוסטים, אפשר שימוש בקטגוריות ותגיות, הקמת פורומים, רב-לשוניות (תמיכה בשפות נוספות), הקמת היבטים (שילובי תכנים ומצגות ראווה) ועוד. ניתן להרחיב את התוכנה, הן מבחינת רכיבים והן מבחינה עיצובית, על ידי הורדה מהאינטרנט של תכנים הנמצאים באתר הקהילה (או התקנתם לתוכנה ישירות מאתר הקהילה). תכנים כאלה המתווספים על הליבה נקראים בדרך כלל תוכני "תרומה" - Contrib שכן הם נתרמו על ידי מתכנתים ואחרים בקהילה בהתנדבות מלאה, לטובת כלל המשתמשים. דרופל מכילה באופן מובנה מערכת גמישה לניהול משתמשים והרשאות. ניתן להקצות סט של הרשאות ל"תפקידים" ולשייך או לנייד משתמשים רשומים בין ה"תפקידים". כמו כן, ישנה גם מערכת מעקב (אחר משתמשים ועריכות), כלי אבטחת מידע, כלי תקשורת עם משתמשים ולקוחות (למקרה שמדובר באתר מסחר אלקטרוני) ועוד. השוק הבינלאומי של מסחר אלקטרוני בדרופל הוא שוק ענף; קיימות אף ערכות עיצוב שניתן לקנות בגלריות השונות (כגון Template monster או Themeforest) שהן ייעודיות להקמת חנות אלקטרונית. המודול העיקרי המשמש להקמת חנויות אינטרנטיות בדרופל (Drupal Commerce) חופשי ונתמך בידי קהילה רחבה של מתכנתים. ניתן לבנות עם התוכנה גם אתרי אפיליאציה (שיתופי פעולה מסחריים) וישנם כלים המסייעים בכך. מאז החל פיתוחה של דרופל 8 ישנה מגמה להרחיב את דרופל מבחינה עיצובית גם לתחום ה-SaaS ולאנשי טכנולוגיית מידע (IT); כך למשל הוכנסו רכיבים המטפלים בשירותי אינטרנט (Web services) לליבת התוכנה. מאז יציאתה של דרופל 8 שולבו בה טכנולוגיות המאפשרות פריסה ריספונסיבית (Responsive layouts) אוטומטית של מבנים מסוימים, כמו היבטי תוכן, גלריות, ופאנלים (תוכן מוחלק לריבועים בפריסה נתונה) כך שאתרים הנבנים עימה מתאימים באופן אוטומטי, בדרך כלל, לתצוגת ניידים וטאבלטים ללא תלות בתבנית (כמו בדרופל 7). קוד התכנות של דרופל עצמה כתוב בעיקרו בשפת התכנות PHP ובחלקו הקטן ב-Javascript. אין צורך לדעת את שפות התכנות הללו בשביל לנהל אתר עם התוכנה, קל וחומר בשביל לבנות עימה אתר אישי או בסיסי. עבודה עם השפות נפוצה בעיקר בקרב מפתחים מקצועיים ונדרשת גם לפיתוח אפליקציות סמארטפון עם התוכנה; אך לא בהכרח לאתרי אינטרנט (אפילו אם מדובר באתר מותאם-מובייל אך שאינו אפליקציה) - גמישות זו מאפשרת גם לאנשים שאינם מתכנתים לעבוד עם התוכנה כשם שהיו עובדים עם כל תוכנת מחשב אחרת ואף לפתור בעיות אפשריות שאינן דורשות התערבות ברמת קוד תכנות. עם זאת, מלבד היותה מערכת ניהול התוכן, דרופל היא גם PHP Framework עם הנחיות קפדניות לכתיבת קוד (קידוד). והיא נחשבת כ Framework נפוצה לצד Symfony ו Laravel. התנאי הבסיסי להתקנה והרצה של דרופל הוא שרת אינטרנט שמריץ PHP ומאפשר גישה לבסיס נתונים. תצורת ההתקנה הנתמכת והמתועדת ביותר קרויה LAMP - ראשי תיבות של לינוקס, אפאצ'י Mysql ו-PHP. אך עם זאת ניתן להריץ Drupal גם על סביבת Windows בעזרת התוכנה XAMPP או מקינטוש. תוכנת סביבת שרת נפוצה בקרב משתמשי חלונות היא XAMPP (נכון לחודש מרץ 2016 התוכנה WAMP איננה מתאימה לדרופל 8) לאחר התקנה מוצלחת של התוכנה תיווצר סביבת שרת מוכנה שעליה ניתן יהיה להתקין דרופל מיידית. משתמשי לינוקס רבים מעדיפים להקים את השרת ידנית (כלומר להקים את סביבת ה-LAMP בעצמם וחלקם יוכלו להתקין את התצורה ישירות על ידי התוכנה XAMPP שאפשרית גם בלינוקס). אופציות דומות עומדות עבור משתמשי מקינטוש. לדרופל תמיכה נרחבת בעשרות שפות. החל מגרסה 8, כבר בעת ההתקנה ניתן לבחור בקלות התקנת גרסה עברית (בגרסאות קודמות יותר הדבר היה כרוך ביבוא קובץ תרגום אך כעת הבחירה היא מיידית). ניתן גם להתקין את התוכנה באנגלית ולהוסיף עברית (ושפות נוספות) לאחר ההתקנה. למתחילים - ניתן ללמוד מבוא לדרופל בקורסים במכללות היי-טק, בהדרכה אישית ממורה פרטי, או בלמידה עצמאית מקריאה ותרגול של ספרות קהילתית באינטרנט (מומלץ ללמוד קודם מבואות ב-HTML ו-CSS וכמו כן גם ללמוד הקמת סביבת שרת בסיסית) או מספרים למתחילים באנגלית. ישנם גם קורסים למתקדמים או לבעלי רקע ענף בתחום המחשוב המוצעות במכללות שונות או מדרופליסטים המציעים מבוא מקוצר למתכנתים ובעלי ידע במחשוב ותקשוב במסגרת של הדרכה פרטית או הדרכה בארגון; כמו כן, ישנה ספרות ענפה המיועדת למתכנתי PHP ו-Javascript בעיקר. ישנם גם ספרי דרופל באנגלית אותם ניתן לרכוש באתרי מסחר אלקטרוני דוגמת אמזון. קהילת הדרופל היא מגוונת מאוד ולא רק מתכנתים נמצאים בה: ישנם גם מעצבי web, אנשי SEO, מנהלי אתרים, עורכי תוכן מקצועיים ובעלי אתרים התורמים כולם מניסיונם לקהילה; בפרט מתכנתים תורמים לפיתוח ותחזוק המודולים ומעצבי האתרים לפיתוח התבניות השונות ויישום הטכנולוגיה העיצובית והממשקים השונים. חלק ניכר מחברי הקהילה תורמים בכתיבת מסמכי הסבר ובפתרון בעיות הדדי. אדם המספק שירותים ייעודיים עבור אתרים ו\או או אפליקציות הבנויים בדרופל (בפרט עבודות פיתוח) ועושה זאת באופן עקבי מכונה לרוב דרופליסט. בגלל שדרופל היא מערכת open source כולם יכולים לתרום לפיתוח. כמו לכל קהילה גם לדרופל יש מפגשים והם מחולקים לכמה סוגים: DrupalCon - אירוע שמתקיים פעמיים בשנה (בהפרש של חצי אחד מהשני). אירוע אחד מתקיים בעיר מרכזית באירופה והשני מתקיים בעיר מרכזית בארצות הברית. מעבר לשני האירועים האלה ישנם עוד אירועי DrupalCon שמתקיימים ביבשות אחרות. ב-2014 וב-2015 התקיימו בערים מרכזיות באוסטרליה (סידני ומלבורן בהתאמה) ובשנת 2015 התקיים DrupalCaon בבוגוטה, דרום אמריקה. הכנס מתפרס על שבוע שלם (שני עד חמישי) שבמהלכו יש הרצאות ביום ובערב יש פעילויות. בכל יום חמישי יש ערב טריוויה בו יכולים המשתתפים לזכות בפרסים. בסוף שבוע של כל כנס (שישי שבת וראשון) יש אירוע שנקרא Sprints שבו מתחלקים לקבוצות ופותרים בעיות בליבה של דרופל או בכל נושא אחר שקשור לדרופל. DrupalCamp - אירוע שמתקיים עבור קהילות מקומיות ובמתכונת הרבה יותר מצומצמת מזו של הכנס העולמי. בישראל מתקיים הכנס באופן סדיר כל שנה החל משנת 2012 וישנם עוד קהילות בעולם אשר מאמצות את הנוהל. האירוע מיועד לחזק את קשרי הקהילה המקומית של דרופל ולהציג את המערכת לאנשים שטרם התנסו במערכת. Drupal Dev Days - בניגוד לשני האירועים הנ״ל שמיועדים לא רק למפתחים, DDD מיועד אך ורק למתכנתים ובעל אוריינטציה תיכנותית. להלן מספר מונחים דרופליים מרכזיים: וורדפרס ג'ומלה מדיה וקבצים בנושא דרופל בוויקישיתוף אתר האינטרנט הרשמי של דרופל (באנגלית) דרופל, ברשת החברתית פייסבוק דרופל, ברשת החברתית אקס (טוויטר) מנגנון שליפת המידע (ה-API) הנרחב של דרופל מאפשר תחלופת מידע ותלות שקולה בין הרכיבים השונים - מאפיין ייחודי של התוכנה המבטיח גמישות ויצירתיות ברמת התוכן. אפשריות תמיכה נוספות - רשימת מקורות לקבלת תמיכה. סטטיסטיקות רשמיות של ארגון דרופל העולמי (ה-Drupal association). או בנגזרות שלו (כגון Twig), כל ישות היא טבלה אך לא כל טבלה היא ישות - למשל, טבלת רג'יסטרי וטבלאת קאש אינן טבלת ישות. במהלך העבודה יתאפשר לפתוח מאגר קטגוריות, מאגר תגיות, מאגר קטגוריות-בלוג ולמעשה כל מאגר אחר שרק אפשר לחשוב עליו, כמעט ללא הגבלה. זוהי דוגמה לגמישות (Scalability) שבשיטת הישות > סוג ישות > מאגר בה עובדת התוכנה.