ג'ומלה

ג'ומלה (!Joomla) היא מערכת ניהול תוכן (CMS) חופשית המשמשת לפרסום תכנים באינטרנט ובאינטרא-נט, אולם ניתן להשתמש בה בצורה נפרדת למטרות רבות אחרות. נחשבת לאחת משלוש המערכות החינמיות הנפוצות לניהול תוכן, לצד דרופל ווורדפרס.

ג'ומלה נכתבה בשפת התכנות PHP, והיא עושה שימוש בטכניקת פיתוח מונחה עצמים. המידע בה נשמר בבסיס נתונים MySQL, והיא כוללת תכונות כמו מטמון דפים, פיד RSS, גרסאות הדפסה, מבזקי חדשות, בלוגים, סקרים, חיפוש ותמיכה בריבוי שפות.

בשנת הוצאת הגרסה הראשונה, ג'ומלה צברה 2.5 מיליון הורדות. בין מרץ 2007 לבין פברואר 2011 היו למעלה מ-21 מיליון הורדות. ישנן למעלה מ-10,000 הרחבות שזמינות ישירות מספריית ההרחבות הרשמית של ג'ומלה וממקורות נוספים ברחבי האינטרנט.

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

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

== יכולות עיקריות המובנות בג'ומלה ==
צד המנהל של ג'ומלה 1.5 בגרסה עברית. בתמונה מוצגת רשימת הדפים מסודרים בטבלה.
אתר טיפוסי שעוצב באמצעות ג'ומלה בשפה האיטלקית 
* מנהל תפריטים - מאפשר ליצור מספר רב של תפריטים, שכל אחד מהם מורכב מפריטים של תפריטים, שיכולים להצביע על תוכן, קישור, רכיב וכדומה.
* מנהל מאמרים - יצירת מאמרים היא הפונקציה המרכזית של מערכת ניהול תוכן זו (ובכלל). כל מאמר שנוצר ניתן לשיוך לקטגוריה, שמשויכת למדור, וכך ניתן ליצור היררכיה תכנים.
* מודולים (אזורים) - עמוד האינטרנט כפי שנראה לגולש מורכב מהרבה מאוד אזורים, עליון, תחתון, מרכזי, חלק ימני, חלק שמאלי ועוד. ניתן לקבוע לכל מודול באיזה אזור יופיע ובאילו עמודים (עמוד הבית, חלק מהתכנים או כולם). לכל תבנית עיצוב נקבע מראש אילו אזורים אפשריים להכנסת תוכן ואילו לא.
* מנהל משתמשים - מנהל את כל המשתמשים באתר כולל מנהלים, לפי קטגוריות ואת ההרשאות שהם מקבלים. כאשר אדם נרשם בעמוד האינטרנט הוא רשום באתר תחת הסיווג הנמוך ביותר שקיים.
* מנהל אשפה - מנהל את התפריטים והתכנים שהושלכו לאשפה, ומאפשר למחזר אותם במקרה של חרטה.
* מנהל באנרים - כולל רישום של מספר הקליקים, על כל באנר.
* מנהל אנשי קשר - ניתן לנהל את אנשי הקשר של האתר כולל לקוחות ומבקרים באתר. אפשר לקשר איש קשר למשתמש באתר וכך להרחיב את הפרטים אודות המבקרים באתר.
* מייל מאורגן (Mass Mail) - משלוח אימייל מהאתר למשתמשים לפי קבוצות.
* מנהל תבניות - מאפשר לערוך את קובצי הCSS והHTML של כל טמפלט, ולהוסיף טמפלטים שנוצרו בידי אחרים.
* מנהל קישורי רשת - מנהל של קישורים לפי קטגוריות. משתמש רשום יכול להוסיף קישורים. לכל לינק קיים מונה הסופר את מספר הגישות (מכונה בעגה המקצועית הקלקות) אליו.
* מנהל סקרים - מאפשר לרשום מספר רב של סקרים, לשמור ולהראות תוצאות לגולשים. גולש לא יכול להצביע פעמיים מאותו מחשב.
* סטטיסטיקה - נותן התפלגות של גלישה לפי דפדפנים ומערכות הפעלה, מספר כניסות לכל העמודים והתכנים שאנשים חיפשו באתר באמצעות רכיב החיפוש.
* מנהל תוספים - מאפשר להוסיף רכיבים תכנותיים להרחבת התפקודיות של האתר. הרכיבים התכנותיים מורכבים משלשה סוגים: תוספים שכוללים לוגיקה תכנותית, מודולים שמתבססים על תוספים וניתן לשלב באזורי דף, וממבוטים שניתן לשלב בתוך עורך הטקסט.

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

פיתוח ועדכון גרסה ג'ומלה! 1.0 הופסק ביום 22 ביולי 2009 [http://community.joomla.org/blogs/community/509-an-old-friend-comes-of-age.html], כאשר הגרסה האחרונה בסדרה היא 1.0.15. הפיתוח של ג'ומלה! המשיך תחת עץ פיתוח 1.5 וכלל שינוי קוד כולל כל ספריות הליבה והפיכת ג'ומלה בנויה בתכנות מונחה עצמים. מגרסה 1.6.5 עדכון ג'ומלה מתבצע בלחיצת כפתור ממשק הניהול כך ששדרוגה נהפך לקל ונגיש.

== רכיבים ותבניות ==
ג'ומלה נבנתה כמערכת תשתיתית כדי שיוכלו לרוץ עליו תוספים ורכיבים רבים שנוצרו בידי צד שלישי, שמוסיפות פונקציונליות תכנותית לאתר. ניתן למצוא בג'ומלה מגוון גדול ביותר של רכיבים בתחומים רבים ושונים (מספרם עלה מ-3,000 רכיבים באפריל 2006 לכ-4,700 רכיבים באפריל 2010, ולכ-10,000 ביוני 2012). בין הרכיבים הקיימים (רובם תחת רישיון הקוד הפתוח): עורכי טקסטים, מערכות לתגובות, לוחות שנה ואירועים, מילון מונחים, סטטיסטיקות גלישה, מנהל הורדות והעלאות של קבצים, ניהול רשימות תפוצה, מנהלי קבצים, מנהלי טפסים, מנהלי גיבוי, מנהל הרשאות, פורומים, חנויות אלקטרונית, רכיבים לתצוגת פלאש ווידאו ואף רכיב להטמעת אתרי מדיה-ויקי.

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

בשל כיוון הכתיבה הייחודי של השפה העברית מימין לשמאל (RTL), יש צורך להשתמש בתבנית התואמת RTL או לבצע התאמות מיוחדות בקוד, לתבניות שלא נועדו לשפות RTL, אם רוצים להשתמש בהן באתר בשפה העברית.

== היסטוריית גרסאות ==
{| class="wikitable" style="float:left;text-align:center; margin-left:0px;margin-right:1em;"
|-
| גרסה
| תאריך יציאה
| נתמכת עד
|-
| style="background:#FA8072" | 1.0
| 
| 
|-
| style="background:#FA8072" | 1.5 
| 
| , LTS (אנגלית)
|-
| style="background:#FA8072" | 1.6
| 
| 
|-
| style="background:#FA8072" | 1.7
| 
| 
|-
| style="background:#FA8072" | 2.5
| 
| , LTS (אנגלית)
|-
| style="background:#FA8072" | 3.0
| 
| 
|-
| style="background:#FA8072" | 3.1
| 
| 
|-
| style="background:#FA8072" | 3.2
| 
| 
|-
| style="background:#FA8072" | 3.3
| 
| 
|-
| style="background:#FA8072" | 3.4
| 
| 
|-
| style="background:#FA8072" | 3.5
| 
| 
|-
| style="background:#FA8072" | 3.6
| 
| 
|-
| style="background:#FA8072" | 3.7
| 
| 
|-
| style="background:#FA8072" | 3.8
| 
| 
|-
| style="background:#FA8072" | 3.9
| 
| 
|-
| style="background:#90EE90" | 3.10
| 
| , LTS (אנגלית)
|-
| style="background:#90EE90" | 4.0
| 
| 
|-
| style="background:#90EE90" | 4.1
| 
| 
|-
| style="background:#90EE90" | 4.2
| 
| 
|-
| style="background:#87CEEB" | 4.3
| 
| n/a
|-
! colspan="2" | צבע
! colspan="2" | משמעות
|-
| colspan="2" style="background:#FA8072" | אדום
| colspan="2" | גרסה אינה נתמכת יותר
|-
| colspan="2" style="background:#90EE90" | ירוק
| colspan="2" | גרסה נתמכת עדיין
|-
| colspan="2" style="background:#87CEEB" | כחול
| colspan="2" | גרסה עתידית
|}

החל מגרסה 1.6 ג'ומלה החלה במחזור חיים של חצי שנה [https://web.archive.org/web/20130329163227/http://developer.joomla.org/strategy.html], כך שכל גרסה נתמכת חודש אחרי הגרסה הבאה. כל שלוש גרסאות יוצאת גרסה עם תמיכה ארוכת טווח (ר"ת של Long Term Support), והיא תיתמך שלושה חודשים אחרי גרסת ארוכת טווח הבאה (ראו טבלה הרצ"ב).

=== ג'ומלה 1.5 ===
בסוף 2006 יצאה גרסת 1.5 בטא. ב-28 בינואר 2008 הוצאה הגרסה היציבה של 1.5, שכללה שינויים גדולים לעומת הגרסה הקודמת. גרסה זו עברה כתיבה מחדש ואופטימיזציה והוספו בה תכונות כמו מעבר ל-UTF-8 ,XHTML ,patTemplates, תכנות מונחה עצמים, תמיכה בבסיסי נתונים שונים, ממשק נוח יותר לחיבור תוכנות חיצוניות, הרחבת בנאום המערכת באופן שכולל תמיכה מובנת גם בשפות שנכתבות מימין לשמאל כעברית וערבית, תמיכה ב-OpenID ועוד, דבר שגם להגברת היציבות והגמישות של רכיבי צד שלישי.

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

במערכת 1.5 נעשה מאמץ לתאימות לאחור, כדי שרכיבים של הגרסה הקודמת יוכלו גם הם לרוץ וניתן יהיה להריץ את המערכת במצב תאימות לאחור (Legacy mode), כדי להשתמש ברכיבים ישנים שלא נבנו לפי המערכת החדשה. מאז המערכת משופרת ונוספות לה תכונות חדשות במהירות גדולה.

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

=== ג'ומלה 1.6 ===

ג'ומלה 1.6.0 יצאה ב-10 בינואר 2011. 
הגרסה כוללת בין היתר רשימת בקרת גישה (ACL), קטגוריות מקוננות ללא הגבלה (בניגוד לגרסה 1.5, שכללה רק מדור וקטגוריה), סל מחזור משותף לכל הפריטים שנמחקים, עדכון הרחבות בלחיצת כפתור ועוד. לגרסה 1.6 יצאו שש גרסאות ביניים שבכל גרסה תיקנו באגים והכילו שיפורים מינוריים.

=== ג'ומלה 1.7 ===

גרסת 1.7 יצאה ב-19 ביולי 2011 [l] והיא כללה שיפורים בהתקנה, בשדרוג גרסה ובריבוי שפות. כמו כן, בגרסה זו הפרידו את הליבה ממערכת ניהול התוכן כדי ליצור את פלטפורמת ג'ומלה (Joomla-Platform) שתשמש לעוד מטרות אחרות חוץ ממערכת ניהול תוכן (בדומה ל-Zend Framework, CodeIgniter או CakePHP).

=== ג'ומלה 2.5 ===

ג'ומלה 2.5.0 יצאה ב-24 בינואר 2012, שישה חודשים אחרי 1.7.0. גרסה זו היא גרסת תמיכה ארוכת טווח (LTS). במקור גרסה זו הייתה אמורה להיות 1.8.0, אבל ב-9 באוגוסט 2011 הוכרז כי היא תשונה להתאים את המספר לסכימה חדשה כאשר כל גרסת LTS תהיה עם סיומת X.5.

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

=== ג'ומלה 3 ===

ג'ומלה 3.0 יצאה ב-27 בספטמבר 2012 [http://www.joomla.org.il/community/%D7%A2%D7%95%D7%93/224-%D7%92%D7%95%D7%9E%D7%9C%D7%94-3-0-0-%D7%A9%D7%95%D7%97%D7%A8%D7%A8%D7%94-%D7%9C%D7%94%D7%A4%D7%A6%D7%94.html]. במקור גרסה זו תוכננה לצאת ביולי 2012, אבל מחזור גרסאות ינואר/יולי לא היה נוח עבור המתנדבים ומחזור הגרסאות שונה לספטמבר/מרץ.

החידוש הגדול בגרסה 3.0 הוא התמיכה במובייל (סמארטפונים וטאבלטים) כחלק מהליבה של ג'ומלה, אשר כוללת את הפריימוורק Bootstrap של טוויטר [http://www.joomla.org.il/community/%D7%97%D7%93%D7%A9%D7%95%D7%AA/195-%D7%9E%D7%91%D7%98-%D7%A8%D7%90%D7%A9%D7%95%D7%9F-%D7%A2%D7%9C-%D7%92%D7%95%D7%9E%D7%9C%D7%94-3-%D7%94%D7%9E%D7%AA%D7%90%D7%99%D7%9E%D7%94-%D7%9C%D7%A0%D7%99%D7%99%D7%93%D7%99%D7%9D.html].

ב-24 בדצמבר 2012 הוחלט כי תתווסף גרסה נוספת בסדרה 3 כדי למטב את הפיתוח ולתת תמיכה ארוכה יותר לגרסאות ארוכות טווח

==== ג'ומלה 3.1 ====
ב-25 באפריל 2013 ג'ומלה 3.1 שוחררה עם תמיכה מובנית בתגיות תוכן.

==== ג'ומלה 3.2 ====
ב-6 בנובמבר 2013 ג'ומלה 3.2 שוחררה עם תמיכה מובנית בגרסאות תוכן, התקנת הרחבות ישירות מפאנל הניהול, Two factors authentication, ממשק Ajax אחיד ועוד.

== פרסים ==
פרויקט ג'ומלה זכה בפרס לפרויקט הקוד הפתוח הטוב ביותר לשנת 2005, בתערוכת LinuxWorld באוקטובר 2005. פרס נוסף ניתן אישית למפתח גרעין הפרויקט, בריאן טימן.

בשנים 2006, 2007 ו-2011 זכתה ג'ומלה במקום הראשון בתואר מערכת הניהול התוכן הטובה ביותר בתחרות של הוצאה לאור Packt [http://www.packtpub.com/article/open-source-content-management-system-award-winner-announced] [https://web.archive.org/web/20071110100811/http://www.packtpub.com/article/joomla-wins-best-php-open-source-content-management-system] [https://web.archive.org/web/20111113185027/http://www.packtpub.com/blog/2011-open-source-awards-winner-news-open-source-cms]. בתחרות משתתפות מעל 70 מערכות ניהול תוכן.

ב-27 באוקטובר 2008, הוצאה לאור Packt הכריזה על יוהאן ג'אנס כ-MVP (ר"ת Most Valued Person) עבור עבודתו כראש צוות המפתחים של ג'ומלה 1.5 והארכיטקטורה שלה. ב-2009 לואיס לאנדרי קיבל את פרס ה-MVP עבור תפקידו כארכיטקט של ג'ומלה ומתאם פיתוח.

== אתרים לדוגמה ==
* [http://demo.joomla.org/ אתר הדגמה של ג'ומלה], אתר ג'ומלה העולמי

== בישראל ==
בישראל ישנה קהילת ג'ומלה פעילה המארגנת מפגשים תקופתיים ואת הכנס השנתי - Joomla!Day.

== קישורים חיצוניים ==

* 

== הערות שוליים ==

קטגוריה:פיתוח יישומי ווב
קטגוריה:תוכנה חופשית
קטגוריה:תוכנות שהושקו ב-2005
קטגוריה:ניהול ידע
קטגוריה:תוכנה חוצת פלטפורמות