אחד הויכוחים הניטשים בין חברות בניית אתרים הוא הויכוח הפופולרי לגבי עדיפות בניית אתרים בג'ומלה או בניית אתרים בוורדפרס. ללא ספק מדובר בויכוח קשה שתוצאתו קונפליקט סכום אפס לפי בחירת הלקוח בחברה שתבנה עבורו את אתר האינטרנט שלו, היות וקיימת חלוקה ברורה וכמעט דיכוטומית בין בוני אתרים בג'ומלה לבין בוני אתרים בוורדפרס. ניתן לומר כי מי שהתחילו את דרכם בעולם בניית האתרים עם ג'ומלה, לא יעזבו מערכת זו לטובת אף מערכת בניית אתרים אחרת ואותו הדבר ניתן לומר על בוני אתרים בוורדפרס. במאמר זה אנסה לעשות סדר בראשי הפרקים של הויכוח כאשר, מן הסתם, אני מוטה לטובת ג'ומלה - בה אני מפתח אתרים משנת 2006. משאמרתי זאת, אין בכוונתי להטיל דופי בוורדפרס או במפתחי אתרים בוורדפרס - אשתדל להציג טיעונים הוגנים לשני הצדדים, הן לטוב והן לרע.
מלבד Joomla ו-WordPress, קיימות בעולם כ-70 מערכות ניהול תוכן (CMS), ביניהן ניתן לציין את Drupal, Magento, TextPattern, RadiantCMS, CushyCMS, SilverStripe, Alfresco ועוד רבים נוספים. לכל מערכות ניהול התוכן מאפיינים דומים וגם הבדלים המייחדים כל מערכת, אך אחד הדברים הבולטים המשותפים לכל המערכות ההלו הוא היותן קוד פתוח. בניגוד לתוכנות מדף שעברו קומפילציה (הידור), מערכות ניהול התוכן הן חינמיות וקהילת המשתמשים יכולה לפתח אותן ככל העולה על דעתה ולמכור הרחבות ותוספים שונים למשתמשי המערכות על מנת לאפשר בניית אתרים מורכבים, מועצבים וידידותיים למשתמש. הבחירה לעסוק דווקא בהבדלים בין ג'ומלה לוורדפרס ולא להתייחס למערכות ניהול תוכן נוספות, נובעת בעיקר מן העובדה ששתי מערכות ניהול תוכן אלו הן הנפוצות ביותר בעולם ולשתיהן קהילות גדולות לפיתוח ליבה והרחבות.
תשתית
ג'ומלה: הפיתוח המקורי של ג'ומלה היה עבור מערכת ניהול תוכן. ג'ומלה בנויה על בסיס קוד פתוח, PHP עם בסיס נתונים MySQL, תבנית עיצוב (טמפלט) שאחראית על נראות האתר. התקנת ג'ומלה על שרת היא קלה וניתנת לביצוע גם כחלק מתוכנות Softaculous במערכות הוסטינג. ליבת ג'ומלה מספקת בהתקנתה הראשונית מספר מערכות מובנות כגון: ניהול משתמשים, חיפוש באתר, קטגוריות מאמרים וניהול מאמרי תוכן, ניהול מודולים, ניהול תפריטי ניווט, ניהול באנרים, ניהול קישורים, ניהול סקרים וכן, שתי תבניות עיצוב - טמפלטים ברירת מחדל עבור צד האתר. בג'ומלה קיימת הפרדה מאוד ברורה על בסיס MVC - Model View Controller כאשר לכל תוסף בג'ומלה ניתן לשנות את הדרך שבה הוא מציג דברים מבלי לשנות את הלוגיקה שלו. הגדרה זו אומרת כי תבנית עיצוב בג'ומלה עושה מה שתבנית אמורה לעשות - אחראית על העיצוב.וורדפרס: וורדפרס - "מכבש דפוס", פותחה במקור כמערכת לכתיבה וניהול בלוגים. קוד פתוח, PHP עם בסיס נתונים MySQL. התקנת וורדפרס כוללת בתוכה שלד של פוסטים ועמודים, מערכת של ערכות עיצוב, תמיכה בריבוי אתרים וכן, מערכת מסננים לצמצום שורות הקוד. כמו ג'ומלה, גם מערכת וורדפרס דורשת התקנה על גבי שרתי Apache או Nginx. בהיבט התשתית לג'ומלה חיסרון אחד מול וורדפרס והוא בדרישה למשאבי שרת רבים יותר מאשר וורדפרס, אך לא מדובר בהשפעה על מהירות העליה של האתר או ברוחב הפס שהוא צורך. טענות נוספות לחסרון וורדפרס על פני ג'ומלה נוגעות בכך שוורדפרס בנויה "בטלאים", כלומר היות והתשתית של וורדפרס נועדה לבלוגים, המערכת אינה עובדת על בסיס MVC כמו ג'ומלה והדבר מקשה באופן ניכר על ביצוע שינויים בעיצוב ובאינטגרציה בין רכיבים.
שימושים עיקריים
ג'ומלה: ג'ומלה משמשת בעיקר לבניית אתרים תדמיתיים, בניית אתרים מסחריים (חנויות מקוונות), רשתות חברתיות, אתרים ללימודים מקוונים, אתרי מגזין ותוכן, אתרים לניהול נדל"ן. ג'ומלה מתאימה לבניית אתרים בכל סדר גודל החל מאתרים קטנים וכלה באתרים ארגוניים הכוללים אלפי משתמשים פעילים. באתר ג'ומלה אחד ניתן לעשות שימוש במספר בלתי מוגבל של תבניות עיצוב ולמעשה ניתן להגדיר תבנית עיצוב שונה עבור כל דף באתר. באופן זה יכול אתר ג'ומלה לשמש למגוון מטרות החל מדף נחיתה, דרך אתר אינפורמטיבי ועד אתר אינטראקטיבי מורכב.וורדפרס: וורדפרס פופולרית יותר מג'ומלה והיא נחשבת כבחירה המומלצת עבור מנהלי אתרים מתחילים ועבור אתרים ובלוגים קטנים או בינוניים. על אף זאת, ניתן כיום לבנות באמצעות וורדפרס מגוון אתרים לתחומים שונים, כאשר בדומה לג'ומלה, לוורדפרס קיימת מערכת רב לשונית מובנית באתר, אך היא קלה יותר לתפעול. החיסרון הגדול בוורדפרס, מבחינת נקודת מבטו של המפתח, הינו היעדר הפרדה בין החלק הלוגי לעיצוב. תבניות מסוימות לוקחות את זה צעד אחד קדימה ואכן כיום תבנית בוורדפרס היא לא רק עיצוב, יש תבניות שמגיעות אם מערכת שלמה מאחורה, למשל "תבנית עיצוב לאתרי נדל"ן" תכלול מערכת לניהול נכסים. כמובן שברגע שמישהו משתמש בתבנית הזאת, הוא תקוע איתה.
עקומת למידה למשתמשי הקצה
ג'ומלה: ניתן להקים אתר ג'ומלה בסיסי (Out of the Box) מבלי לדעת תכנות או מונחה עצמים או HTML. יחד עם זאת, קיימת עקומת למידה די גבוהה הן למפתחים בג'ומלה והן למנהלי האתר. עקומת למידה זו אינה מצריכה ברוב המקרים יכולות תכנות כלשהן וניתן בהחלט למצוא ברשת אין ספור טוויקים להרחבות. מנהלי אתר ג'ומלה יזדקקו ברוב המקרים להדרכה ראשונית אודות אופן ניהול מערכות האתר, למרות שיש לציין כי הן אינטואיטיביות וידידותיות למנהלי האתר על אף שבמבט ראשון האפשרויות הרבות עלולות לגרום לסחרחורת... על אף עקומת הלמידה הגבוהה יחסית של ג'ומלה, התועלת המופקת לאורך זמן עבור מנהלי האתר היא עצומה ותשרת אותם אקספוננציאלית ככל שייטיבו להכיר את המערכות באתר.וורדפרס: ממשק הניהול של וורדפרס קל מאד להבנה והוא אינטואיטיבי יותר מאשר ממשק הניהול של ג'ומלה. שינויים בתבנית העיצוב של וורדפרס דורשים ידע ב- CSS. לתיקיות וקבצי וורדפרס שעל השרת קיים מבנה לוגי המקל על מפתחי וורדפרס לבצע שינויים והתאמות קוד באתר. למרות שעקומת הלמידה של וורדפרס קצרה יותר מאשר ג'ומלה, יש לציין כי מאפיינים מסוימים של וורדפרס דורשים לא רק יכולות תכנות, גם הבנה מערכתית. כך למשל שינויים במבנה תפריט הניווט של וורדפרס מאלץ את המשתמשים לרכוש ידע בתכנות ו-CSS על מנת לבצע שינויים נדרשים בתבנית העיצוב, לעומת ג'ומלה אשר מנהלת את תפריטי הניווט בממשק הניהול ואינה מצריכה כל יכולות תכנות.
הרחבות ותוספים
ג'ומלה: ג'ומלה מאפשרת גמישות רבה לפיתוח תוספות והרחבות על ידי צד ג'. ההרחבות לג'ומלה מחולקות לשלוש קטגוריות: רכיבים, מודולים ופלאגינים. את ההרחבות לג'ומלה ניתן למצוא באתר ההרחבות של ג'ומלה - JED, אשר מתעדכן תדיר בהרחבות חדשות - חינמיות ובתשלום. אתר ההרחבות של ג'ומלה מנוהל בהתנדבות על ידי חברי הקהילה אשר מוודאים את חוקיות התוספים, מערכת האבטחה שלהן וכי תגובות חברי הקהילה לתוספים אכן תורמות מידע חדש ואותנטי עבור משתמשים אחרים. על מנת לשוות לאתר ג'ומלה נראות מרהיבה, יש צורך בבניית תבנית עיצוב (טמפלט) לאתר ועבור כך קיימים פתרונות שונים: תוכנת Artisteer למשל נוחה מאד לבניית תבניות עיצוב רספונסיביות לג'ומלה, אתרים שונים מאפשרים הורדה חינם של תבניות עיצוב או רכישה של תבניות עיצוב וכמו כן, Frameworks שונים מאפשרים עיצוב דינאמי לאתר באמצעות ממשק הניהול של ג'ומלה.וורדפרס: התוספים לוורדפרס נקראים פלאגינים או וידג'טים. בדומה לג'ומלה, גם לוורדפרס קיימים פלאגינים רבים, אך בשונה מג'ומלה, הפלאגינים של וורדפרס אינם עוברים את אותה מערכת בקרת איכות (QA) דקדקנית. למעשה, אחת מבעיות האבטחה הקשות של וורדפרס נובעת מכך שפלאגינים רבים כוללים פרצות אבטחה שלא נתגלו ואם נתגלו, לא עברו עדכון לסגירת הפרצה. לעיתים וורדפרס יוצרת מצב בו יש להתקין תוסף לכמעט כל פעולה והדבר קשה ומכביד, בייחוד כאשר תוספים אינם פועלים בהרמוניה עם תוספים אחרים (תוספים בוורדפרס שנכתבים בצורה נכונה תוך שמירה על סטנדרטים נכונים, יעבדו בהרמוניה מושלמת). לעניין תבניות העיצוב לוורדפרס: תוכנת Artisteer מאפשרת ייצוא תבניות עיצוב גם לוורדפרס וכן, אתרים רבים אפשרים הורדת תבניות עיצוב חינמיות או בתשלום עבור וורדפרס. הבדל עיקרי בין תבניות עיצוב וורדפרס לג'ומלה הוא בכך שתבניות וורדפרס נוטות תהיות יותר מינימליסטיות, בעוד שתבניות ג'ומלה ורסטיליות יותר ומאפשרות למפתחים כר פעולה נרחב יותר.
עדכונים ושדרוגים
ג'ומלה: ג'ומלה התחילה את פעילותה בשנת 2005 עם סדרה 1. עד כה (מרץ 2015) התקדמה סדרת ג'ומלה ל- 3.3.6 כאשר עדכוני אבטחה ותפעול יוצאים כל הזמן. ג'ומלה ניתנת לעדכון בלחיצת כפתור דרך ממשק ניהול האתר אשר מתריע אודות עדכונים לסדרה. סדרת ג'ומלה מפסיקה לקבל תמיכה והרחבות לאחר שנתיים מיום צאת הסדרה הבאה ולפיכך מומלץ לבצע מיגרציה של האתר לסדרה העוקבת על מנת שלא יעמוד במצב של פרצות אבטחה שאינן מקבלות עדכון.וורדפרס: וורדפרס מקבלת עדכונים הרבה יותר תכופים מג'ומלה וקל לעדכן אותה. החלק הראשון של המשפט הוא לא בהכרח יתרון, כיוון שעובדה זו עלולה להיות בעוכרי בעלי האתר היות וכמעט כל יום צריך לעדכן את האתר. אבל העדכון הוא תהליך קליל, לעדכן את וורדפרס מכל גרסא לגרסא החדישה ביותר (גם גרסא שיצאה לפני 3 שנים) הוא עניין של לחיצת כפתור.
אבטחה ואבטחת מידע
ג'ומלה: למערכת ג'ומלה מנגנוני אבטחה חזקים במיוחד, המותקנים יחד עם ליבת המערכת. בנוסף, קיימים תוספים ייעודים להגברת אבטחת האתר ואבטחת המידע בו אותם ניתן להתקין חינם או בתשלום. אבטחת אתר ג'ומלה פועלת הן עבור פאנל ניהול האתר והן עבור צד האתר. סקרים תקופתיים מוצאים את ג'ומלה כבעלת יכולות אבטחה גבוהות יותר מאשר וורדפרס ועובדה זו מסתמכת על מספר אתרי ג'ומלה הנפרצים בכל שנה לעומת אתרי וורדפרס. קהילת המפתחים של ג'ומלה פועלת כל הזמן למציאת פרצות אבטחה בליבה ובהרחבות ומשחררת בתדירות גבוהה אזהרות ועדכוני אבטחה.וורדפרס: וורדפרס ניחנה במספר בעיות אבטחה המובנות במערכת. אחת מהן נעוצה באחידות של נתונים ב- Data Base של האתר כגון: Prefix לטבלאות, שם האדמין והמספר הסידורי שלו. לא רק ליבת וורדפרס קשה לאבטחה, גם הפלאגינים של וורדפרס אשר אינם עוברים בקרת איכות קפדנית, יוצרים במקרים רבים פרצות אבטחה המסכנות את האתר ואת המידע שבו. לא אחת יוצרים עדכוני האבטחה של וורדפרס מצב בו כל האתר מתעדכן. שיבושי נראות ותפעול הם רק אחת ההשלכות של מצב זה, אך לחליפין, במידה ולא יתבצע עדכון משמעותי שכזה, הדבר עלול להוביל לפרצת אבטחה באתר אשר תאפשר חדירה לשרת האחסון של האתר, ניצול משאבים, שליחת ספאם והשחתת אתרים נוספים בו. בחודש יוני 2011 סגרה וורדפרס העולמית את הגישה למאגר הפלאגינים ואף איפסה את הסיסמאות לכל המשתמשים וכל זאת, עקב פריצה דרך "דלתות אחוריות" של מספר פלאגינים.
אופטימיזציה, קידום אתרים וידידותיות לגוגל
ג'ומלה: על מנת להגיע לתוצאות SEO - Search Engine Optimization טובות באתר ג'ומלה, יש לבצע מספר לא מועט של מטלות, חלקן באמצעות תכנות קוד. ג'ומלה בנויה לאופטימיזציה וידידותיות לגוגל, אך בכל זאת דרושים ידע ומקצועיות בכדי שאתר ג'ומלה יתפקד מעבר להצגת תגי מאטה והפעלת URL rewriting לכתובות דפי האתר.וורדפרס: היות ופלטפורמת וורדפרס נועדה במקור לשמש עבור בלוגים, גוגל נוטה לייחס לוורדפרס ידידותיות רבה לתוצאות חיפוש במנוע, על פני מערכות ניהול תוכן אחרות. אתר וורדפרס עשוי להופיע בתוצאות החיפוש של גוגל כבר יומיים לאחר העלאתו לרשת, לעומת אתר ג'ומלה אשר לעיתים ידרשו עבורו כ-14 ימים. יש לציין כי לוורדפרס קיימים יותר פלאגינים עבור SEO מאשר לג'ומלה, אולם לא כולם פועלים Out of the Box ויש לבצע התאמות וקונפיגורציות לכל אחד בנפרד בהתאם למבנה האתר.
ניהול משתמשים
ג'ומלה: ניהול המשתמשים בג'ומלה מחולק ל-9 רמות הרשאה הן בפאנל הניהול האחורי והן בצד האתר הקדמי. ניהול הרשאות משתמשים מאפשר למנהלי העל (Super Admin) לקבוע עבור אתר ג'ומלה את הרשאות הגישה והפעולות המותרות עבור כל אחד מהרכיבים המותקנים באתר (צפייה, שינוי, מחיקה).וורדפרס: גם וורדפרס מאפשרת הגדרת הרשאות משתמשים (5 רמות), אך היא מאפשרת גם יצירת פרופילים מרובים לכותבים באתר. וורדפרס ממליצים להגביל את מספר המשתמשים להם ניתנת גישת ניהול לאתר.
תמיכה וקהילה
ג'ומלה: Joomla!Day הינו כנס שנתי הנערך במקומות שונים בעולם עבור קהילת ג'ומלה העולמית. מעבר לכך, קיימים פורומים למשתמשי ג'ומלה וקבוצות ג'ומלה ברשתות החברתיות. יש לציין כי נוכחות בפורומים ובקבוצות החברתיות של ג'ומלה הינה כלי לימוד רב עוצמה אשר עשוי לסייע הן לפיתוח והן לניהול האתר. חברי קהילה רבים שהתחילו בבקשות תמיכה ועזרה, מוצאים את עצמם אחרי זמן לא רב מספקים עזרה ופתרונות יצרתיים לחברים חדשים ובכך מחזקים את הקהילה ומגדילים את החברים בה. קהילת ג'ומלה מקיימת ערכים של שיתוף ועזרה הדדית ומקדמת ערכים אלו באמצעות דיוור, אירועים וסדנאות.וורדפרס: על אף הפופולריות הרבה של וורדפרס, קהילת וורדפרס אינה דומיננטית כקהילת ג'ומלה וניכר כי יוזמות הפיתוח של קהילת וורדפרס אינן עומדות בקצב יוזמות הפיתוח של קהילת ג'ומלה. נקודה קטנה להרמת גבה: קיים סוג של שיתוף פעולה בין מיקרוסופט לוורדפרס. יש שיראו בכך כדבר מבורך ויש שיראו בכך חדירה של מוצרי מיקרוסופט (שאינם אהודים יתר על המידה) לקהילת הקוד הפתוח ומשתמשי לינוקס.
עלויות בניית אתר ופיתוח מערכות פנימיות
ג'ומלה: בדרך תהיינה עלויות בניית אתר ג'ומלה או פיתוח מערכת פנימית באתר, גבוהות יותר מאשר עבור וורדפרס. הסיבה לכך נעוצה לרוב בעובדה כי פיתוח אתר ג'ומלה מקצועי ומורכב טומן בחובו דרישה ליכולות תכנות. התועלת המופקת מאתר ג'ומלה בהיבט הנראות, התפעול והאבטחה - גבוהה וחשוב מכך, תועלת גבוהה לטווח ארוך. התועלת מתבטאת ביציבות האתר, ביכולת השדרוג והעדכון, ניהול המשתמשים, השמירה על קשר עם משתמשים קיימים ורכישת משתמשים חדשים. פיתוח על בסיס פלטפורמת ג'ומלה נותן ללא ספק תמורה בעד ההשקעה הכספית בו, על אף היותו ברוב המקרים גבוה מאשר פיתוח על גבי פלטפורמות אחרות. ג'ומלה מייצגים בהרבה מאד מקרים בעלי אתר שמאסו בבינוניות ובחרו לעשות השקעה חכמה במערכת אשר תקדם את האינטרסים שלהם ולא נופלת במלכודת הדבש של פיתוח מערכות זולות.וורדפרס: עלויות בנייה ותפעול שוטף של אתר וורדפרס יכולות להיות נמוכות יותר מאשר ג'ומלה, למרות הצורך בעדכון תדיר של האתר. השאלה אשר צריכה להישאל היא: "לאיזה טווח זמן?". בטווח הקצר, גם אם עלויות תפעול וורדפרס נמוכות יותר, ככל שהזמן עובר, עולות עלויות התמיכה והתפעול השוטף של וורדפרס עקב הצורך המתמיד בשיפור מנגנוני האבטחה של ליבת המערכת ובעיקר של הפלאגינים הייעודיים הפועלים באתר.