Joomla!
Joomla! is een vrij, opensource-contentmanagementsysteem. Joomla! is geschreven in PHP en werkt met een MySQL of (sinds versie 2.5) MS SQL-database. Joomla! heeft functies als het cachen van pagina's, RSS-feeds, printversies van pagina's, nieuwsflitsen, blogs, fora, opiniepeilingen, kalender, zoeken en taalinternationalisatie.

De naam is de Engelse fonetische spelling van het Swahili-woord 'jumla' dat 'alles samen' of 'als één geheel' betekent. De naam is gekozen om de verbintenis van het ontwikkelteam en de gemeenschap met het project te benadrukken.

Joomla! is vrijgegeven onder de GNU General Public License.

Geschiedenis 
Joomla! ontstond als een afgescheiden voortzetting van Mambo, na een ruzie tussen het Australische Miro Corporation, de eigenaar van het handelsmerk 'Mambo', en de meerderheid van het ontwikkelteam. De twee groepen splitsten op 17 augustus 2005. Miro Corporation richtte een stichting op met als doel het project financieel te ondersteunen en het te beschermen tegen rechtszaken. Het ontwikkelteam beweerde dat de bepalingen van de stichting in strijd waren met eerdere overeenkomsten gesloten door het gekozen Mambo Steering Committee, dat er geen overleg is geweest met de invloedrijke partijen en dat sommige bepalingen de basisbeginselen van opensourcesoftware schonden. Deze beweringen zijn nooit bewezen.

Het ontwikkelteam begon een website 'OpenSourceMatters' om de gebruikers, ontwikkelaars, webdesigners en de gemeenschap in het algemeen te informeren. De voormalige leider van het projectteam Andrew Eddie (ook bekend als 'MasterChief') schreef een open brief aan de gemeenschap, die verscheen op het aankondigingengedeelte op het publieke forum op mamboserver.com.

De volgende dag waren duizend mensen lid geworden van het forum van de website opensourcematters.org. De meesten postten aanmoedigende berichten en verklaarden hun steun aan het ontwikkelteam. De website bezweek bijna onder de grote belangstelling. Het nieuws werd via belangrijke IT-nieuwsbronnen verspreid. De directeur van Miro, Peter Lamont, gaf een publiekelijke reactie in het artikel.

Deze gebeurtenis bracht diepe gevoelens boven binnen de opensourcebeweging over wat 'open source' kan worden genoemd. De fora van veel andere opensourceprojecten werden overspoeld met reacties voor en tegen de acties van beide kanten. Geruchten en beschuldigingen van overtredingen door Miro en de Mambo Foundation vierden hoogtij.

In de twee weken na de aankondiging van Andrew Eddie werden de teams gereorganiseerd en bleef de gemeenschap groeien. Op 1 september 2005 werd de nieuwe naam aangekondigd op een gemêleerde bijeenkomst van meer dan 3000 trouwe volgelingen van het ontwikkelteam.

Op 8 juli 2006 maakte Eddie bekend zijn functie als projectleider neer te leggen. Een team (eerste core team), bestaande uit Andrew Eddie, Emir Sakic, Andy Miller, Rey Gigataras, Mitch Pirtle, Tim Broeker, Alex Kempkens, Arno Zijlstra, Jean-Marie Simonet, Levis Bisson, Andy Stewart, Peter Russell, Brad Baker, Brian Teeman, Michelle Bisson, Trijnie Wanders, Shayne Bartlett, Nick Annies en Johan Janssens neemt de taak dan op zich. In de loop van de tijd is het core-team verschillende malen veranderd.

Inhoud van Joomla! 
Het Joomla!-pakket bestaat uit veel verschillende onderdelen, die zo veel mogelijk modulair gebouwd zijn. Dit om het maken van extensies makkelijk te maken. Een overzicht van beschikbare extensies is verkrijgbaar op de Joomla Extensions Directory.

De structuur van Joomla! 

Het Joomla!-framework, de kern van het systeem, regelt alle basiselementen van een website, zoals de ingelogde gebruikers, de rechten van bezoekers en gebruikers en het ophalen van gegevens vanuit verschillende bronnen.
Vervolgens zijn er drie elementen (extensies) binnen Joomla! die geactiveerd worden door het framework:
 Componenten: programma's geschreven in PHP die daadwerkelijke acties uitvoeren, zoals het verwerken van nieuwsberichten van platte tekst naar HTML-geformatteerde tekst. Het belangrijkste voordeel van componenten is echter de mogelijkheid die ze bieden om de website in kwestie functioneel uit te breiden. Hierbij kan gedacht worden aan een gastenboek, downloadomgeving, fotogalerij, etc.
 Modules: blokken op de website die naast de hoofdinhoud getoond kunnen worden. Voorbeelden zijn onder andere menu's, kalenders, willekeurige afbeeldingen en recente toevoegingen.
 Plug-ins: transformeren tekst in de inhoud van een pagina naar een geformatteerde tekst, zonder rekening te houden met de sjablonen/templates. Een standaard bijgeleverde plug-in zorgt er bijvoorbeeld voor dat een e-mailadres in de inhoud van een pagina omgezet wordt naar een voor spambot onleesbare code. Voor het uitkomen van Joomla! 1.5 werden de plug-ins Mambots genoemd.

Vervolgens sturen deze elementen hun uitgewerkte inhoud door naar de template, waar de betreffende teksten vervangen worden.

De template uiteindelijk, is verantwoordelijk voor de grafische voorstelling van de website. Hier staan de diverse css-bestanden voor de opmaak van tekst en de instructies voor de plaatsing van de onderdelen in de betreffende pagina.

Veel templates en extensies zijn gratis. Daarnaast zijn er ook commerciële aanbieders die een bepaalde service en garantie bieden bij hun aanbod.

Versies

1.0.x 
De eerste versie van Joomla! (versie 1.0.0) werd op 17 september 2005 aangekondigd. Deze versie kwam grotendeels overeen met Mambo-versie 4.5.2.3. Hier en daar waren er enkel kleine verbeteringen.

1.5.x 
Op 21 januari 2008 is de grotendeels herschreven versie 1.5.0 vrijgegeven. Sindsdien staat Joomla los van Mambo. De meeste componenten en modules voor 1.0.x kunnen geïnstalleerd/gebruikt worden door activatie van een "legacy"-plug-in waardoor deze in een emulatie draaien. Toch werd aangeraden om zo snel mogelijk over te schakelen naar de overeenkomstige "1.5 native versie"

In augustus 2008 werd een ernstig beveiligingslek in de versies 1.5.0 t/m 1.5.5 ontdekt. Dit lek is in versie 1.5.6 verholpen.

Ondersteuning voor Joomla 1.5.x stopte officieel april 2012, maar werd officieus nog tot eind 2012 ondersteund (voor veiligheidsproblemen).

1.6.x 
Eind juni 2009 is een eerste testversie van Joomla 1.6 beschikbaar gekomen. Toch heeft het tot 18 mei 2010 geduurd eer de eerste bètaversie werd vrijgegeven. Daarop volgde er in cycli van twee weken telkens een nieuwe bètaversie. Op deze manier werkte men naar een release candidate, die op 14 december 2010 werd vrijgegeven.

De stabiele versie werd op 10 januari 2011 vrijgegeven.

De belangrijkste aanpassingen/nieuwigheden:
Verbeterde Access Control List waarbij de beheerder zelf extra security-groepen en toegangsrechten kan instellen
Het nesten van categorieën
Standaardisatie in de manier waarop componenten worden geschreven aan de hand van een verbeterd MVC-model

Daarnaast is Joomla 1.6 slechts een tijdelijke versie. De support op deze versie vervalt eind augustus 2011.

1.7.x 
Deze versie werd uitgegeven op 19 juli 2011. Net zoals versie 1.6 is deze release ook van tijdelijke aard. Support eindigde in februari 2012. In deze versie zijn meer dan 300 bugs opgelost. Daarnaast is deze versie ook een zet om het CMS los te koppelen van het framework.

2.5.x 
Hoewel initieel aangekondigd als Joomla 1.8 werd in september 2011 aangekondigd dat deze zal uitkomen onder versie 2.5. De eerste versie van 2.5 is op dinsdag 24 januari 2012 verschenen. Support zal voorzien worden tot voorjaar 2014.

Versie 1.7.4 (waarvan .4 in verband met een veiligheidslek ook op 24 januari 2012 is verschenen) zal nog worden ondersteund tot 24 februari 2012.
Joomla 1.5 wordt nog tot september 2012 ondersteund, grote veiligheidsproblemen zullen in ieder geval nog opgelost worden totdat Joomla 3.0 verschijnt.

Een goed draaiende website kan natuurlijk nog wel blijven bestaan met Joomla! 1.5.xx. Er zijn immers ook nog heel veel websites die draaien onder versie 1.0. Maar uiteindelijk is het beter om op termijn over te gaan naar versie 2.5.xx. Allereerst vanwege de veiligheid en ook de nieuwe functionaliteiten zijn mooi meegenomen.

3.x 
Joomla 3.0 werd eind september 2012 vrijgegeven. In deze versie is vooral de gebruikersinterface behoorlijk vernieuwd en verbeterd. Door het toepassen van Bootstrap is het gehele CMS ook op mobiele apparaten toegankelijk. Versie 3.0 is een korte-termijn release, support op deze versie verviel in april 2013. In april 2013 werd versie 3.1 vrijgegeven en in november 2013 versie 3.2 waarmee de support voor 3.1 verviel. In april 2014 werd versie 3.3 vrijgegeven. Versie 3.2 werd ondersteund tot oktober 2014 wegens een aanpassing in de vereiste PHP versie.

Joomla 3.4 werd uitgebracht op 25 februari 2015.

3.5 
Joomla! 3.5 werd vrijgegeven op maandag 21 maart 2016.

3.6 
Joomla! 3.6 werd vrijgegeven op maandag 12 juli 2016.

Deze nieuwe release biedt meer dan 400 verbeteringen aan het populaire CMS, inclusief veel functies die het beheer van Joomla! websites makkelijker maken met meer functies en veel UI (gebruikers ervaring) verbeteringen.

De UI (gebruikersinterface) verbeteringen omvatten tijdbesparende functies, zoals hulp om uw modules sneller te vinden en verbeterd gebruikersbeheer. U kunt nu ook menu problemen determineren en oplossen met de nieuwe mogelijkheid om alle items van alle menu's te bekijken. Het aanmaken van inhoud in Joomla! is nu gemakkelijker. U hoeft er niet aan te denken om uw categorieën eerst aan te maken dankzij de nieuwe functie om categorieën tijdens het proces in te voeren. En u heeft nu betere controle over wie wat ziet in het beheergedeelte met de nieuwe menu-type ACL functies.

Deze release brengt ook een aantal nieuwe en geavanceerde functies speciaal voor ontwikkelaars. De nieuwe Sub Form Field functie in Joomla! 3.6 geeft u de mogelijkheid om XML formulieren te nesten binnen elkaar of bestaande formulieren binnen andere formulieren te hergebruiken. U kunt ook complexere database query's maken met geavanceerde WHERE clausules. U kunt ook gebruik maken van de verbeterde opslag van dynamische JavaScript variabelen.

3.7 
Joomla! 3.7 werd vrijgegeven op dinsdag 25 april 2017.

Deze nieuwe release biedt meer dan 700 verbeteringen aan het populaire CMS, onder andere Extra Velden (Custom Fields), verbeterde workflow, meertalige associatie beheer, menu manager voor menus in de beheerinterface, verbeterd update systeem, verbeterde extensiebeheer en UI (gebruikers ervaring) verbeteringen.

3.8 
Joomla! 3.8 werd vrijgegeven op dinsdag 19 september 2017.

Deze nieuwe release biedt een verbeterd router systeem, Joomla! 4 compatibiliteitslaag, installeerbare en meertalige voorbeelddata, code verbeteringen en encryptie ondersteuning (voor een Sodium uitbreiding op  PHP 7.2, of via sodium_compat polyfill voor lagere ondersteunde PHP versies).

3.9 
Joomla! 3.9 werd vrijgegeven op dinsdag 30 oktober 2018.

Bij deze nieuwe release staat de Privacy Tool Suite centraal, om sneller en makkelijker met een website te kunnen voldoen aan de AVG-regelgeving. Daarnaast zijn er onder andere verbeteringen in het contentbeheer, meertalige websites en is er ondersteuning voor de Google Invisible reCAPTCHA toegevoegd.

Referenties

Externe link 
 Joomla!-website (in het Engels, ook met een Nederlandstalig deel op het forum)

Opensourcesoftware en vrije software
Contentmanagementsysteem
Software geschreven in PHP