Wat zit er eigenlijk in Joomla? Een overzicht van 2005 tot vandaag

...

Van artikels tot REST API: wat er echt in Joomla zit

De meeste mensen kennen drie dingen van Joomla: artikels, gebruikers en een backend. Dat is minder dan tien procent van wat er standaard in de core zit — zonder één extensie te installeren.

Hieronder een chronologisch overzicht van alle noemenswaardige features, van de eerste release in 2005 tot vandaag. Niet als marketingpraatje, maar als eerlijk antwoord op de vraag: wat krijg ik eigenlijk?

Joomla is geen blogplatform met wat extra's. Het is een volwaardig CMS met toegangscontrole, meertaligheid, versiebeheer, een REST API en ingebouwde automatisering. Dat is niet niks voor iets wat gratis is.

Wat er al in zat vanaf 2005

De eerste stabiele release van Joomla — versie 1.0, september 2005 — leverde meteen een volledig CMS. Geen skelet dat je nog moest opbouwen. Artikels en categorieën, modules per pagina aan- en uitzetten, meerdere menu's naast elkaar, een mediabibliotheek, sjablonen volledig los van de inhoud, contactformulieren met categorieën, en een ingebouwde zoekmachine. Alles van dag één.

Wat veel mensen vergeten: ook het bannerbeheer zat er al bij. Klik- en impressietellers per banner. Dat klinkt onschuldig, maar het betekent dat Joomla van bij het begin dacht aan sites met meer dan één doel — niet alleen content tonen, maar ook beheren.

Wat er bijkwam in Joomla 1.5 en 1.6 (2008–2011)

Joomla 1.5 (2008) bracht twee dingen die tot op vandaag fundamenteel zijn: template-overrides en plugins.

Template-overrides zijn het systeem waarmee je de HTML-output van elke component of module kan aanpassen zonder de core aan te raken. Je kopieert één bestand naar je template-map, past het aan, en bij de volgende update van Joomla of de extensie blijft jouw versie intact. Klinkt technisch, maar het is de reden waarom ik al 20 jaar geen maatwerk-installaties hoef te repareren na een update.

Plugins zijn stukjes code die op events draaien. Inhoud aanpassen vóór weergave, externe authenticatiesystemen koppelen, editor-knoppen toevoegen, automatische taken uitvoeren. De meeste sites gebruiken er tientallen zonder het te weten.

Joomla 1.6 (2011) was de echte sprong. Drie dingen veranderden alles:

  • ACL: onbeperkt nestbare gebruikersgroepen en toegangsniveaus. Per artikel, per categorie, per module kan je instellen wie mag lezen, bewerken of publiceren. Meer controle dan de meeste betaalde CMS'en bieden.
  • Meertaligheid in de core: volledige meertalige sites zonder extensie. Artikels, menu's en modules per taal, met koppelingen tussen vertalingen.
  • Nestbare categorieën: categorieën in categorieën, voor alle componenten. Einde van de rigide "sectie + categorie"-structuur.

De features die het meest worden onderschat

In 2017 kwamen Custom Fields. Eigen velden toevoegen aan artikels, contacten, gebruikers of categorieën — tekst, datum, keuzelijst, kleur, bestand, URL, herhaalbaar veld — zonder één regel code. Dit is het onderdeel dat ik het vaakst zie missen op sites waar een derde extensie al geïnstalleerd is voor exact datzelfde doel.

Een praktijkvoorbeeld: een klant had een extensie voor "producteigenschappen" die zijn site elke update vertraagde. Na de overstap naar Custom Fields: zelfde resultaat, geen extra extensie, snellere backend.

Content Versioning (2013) is een ander geval. Elke wijziging aan een artikel wordt automatisch bewaard. Versies vergelijken, terugzetten, permanent bewaren. Werkt ook op categorieën, banners en contacten. Vanaf Joomla 6.0 (2025) registreert het systeem ook wijzigingen aan custom fields en tags. Hoeveel sites gebruiken dit? Weinig.

Joomla als automatiseringsplatform (2021–2022)

Joomla 4.0 (2021) bracht drie dingen die samen een ander soort platform maken:

Workflows: een redactieproces met eigen stappen en overgangen. Van "kladversie" naar "ter review" naar "gepubliceerd", met mailnotificaties en per-stap rechten. Nuttig voor verenigingen of redacties waar meerdere mensen schrijven maar één iemand publiceert.

Web Services API (REST): een volledige REST API op de core. Artikels, gebruikers, menu's, categorieën — leesbaar en schrijfbaar van buitenaf. Hiermee koppel je Joomla aan een mobiele app, een boekingssysteem of een extern CRM.

WebAuthn: inloggen zonder wachtwoord, met een hardware-sleutel of biometrie. Vingerat of Face ID. Ingebouwd, geen extensie nodig.

Joomla 4.1 (2022) voegde Scheduled Tasks toe: ingebouwde cron-jobs. Backups maken, sitemaps genereren, logs roteren, custom fields bijwerken via een externe API, berichten versturen. Op een vast schema, zonder extra extensie. Samen met Workflows en de REST API maakt dit van Joomla een volwaardig automatiseringsplatform — iets wat de meeste mensen niet verwachten van een "gewoon CMS".

Volledig overzicht: alle Joomla-features per versie

Feature Wat het is Versie Jaar
Artikels & categorieën De content-basis van Joomla. Onbeperkt nestbaar sinds 1.6, met eigen rechten per categorie. 1.0 2005
Modules & module-posities Losse blokken (menu, login, banners, eigen HTML) die je per pagina toont of verbergt via menu-toewijzing. 1.0 2005
Menu Manager Meerdere menu's per site, elk met een eigen sjabloon en eigen rechten. 1.0 2005
Media Manager Ingebouwd bestandsbeheer voor afbeeldingen en documenten, met uploadrechten per gebruikersgroep. 1.0 2005
Sjablonen (templates) Volledig gescheiden van de inhoud. Per menu-item kan je een ander sjabloon of stijl toewijzen. 1.0 2005
Contacten-component Adresboek met categorieën en contactformulieren per persoon. Later uitgebreid met custom fields. 1.0 2005
Banners Advertenties of sponsorblokken beheren met klik- en impressieteller per banner. 1.0 2005
Newsfeeds RSS-feeds van externe sites inlezen en tonen als content in je eigen site. 1.0 2005
Zoekcomponent Basis-zoekmachine over alle content. Later aangevuld met Smart Search. 1.0 2005
Template-overrides De HTML-output van een component of module overschrijven zonder de core aan te passen. Updates blijven werken. 1.5 2008
Plugins Code die op events draait: inhoud aanpassen, authenticatie via externe systemen, editor-knoppen, automatische taken. 1.5 2008
Gebruikersgroepen & ACL Onbeperkt nestbare gebruikersgroepen en toegangsniveaus. Per item instelbaar wie mag lezen, bewerken of publiceren. 1.6 2011
Meertaligheid (core) Volledig meertalige site zonder extra extensie. Artikels, menu's en modules per taal, met koppelingen tussen vertalingen. 1.6 / 1.7 2011
Nestbare categorieën Categorieën binnen categorieën, voor alle componenten. Einde van de "sectie + categorie"-beperking. 1.6 2011
Update-manager Core, extensies en sjablonen bijwerken vanuit één scherm. Later aangevuld met e-mailmeldingen. 1.6 2011
Smart Search Geavanceerde zoekmachine met indexering, stemming en autocompletie. Werkt ook op custom fields. 2.5 2012
Tags Transversale labels die artikels, contacten, newsfeeds en andere items groeperen, los van de categoriestructuur. 3.1 2013
Content Versioning Elke wijziging automatisch bewaard. Versies vergelijken, terugzetten en permanent bewaren. 3.2 2013
Tweestapsverificatie (2FA) Inlogbeveiliging met Google Authenticator of YubiKey. Per gebruiker in te schakelen. 3.2 2013
Install from Web Extensies rechtstreeks vanuit de backend installeren via de Joomla Extensions Directory. 3.2 2013
Custom Fields Eigen velden toevoegen aan artikels, contacten, gebruikers of categorieën — zonder code. Het meest onderschatte stuk van Joomla. 3.7 2017
Meertalige menu-associaties Ook menu-items koppelen tussen talen, niet alleen artikels. 3.7 2017
Privacy-tool (AVG/GDPR) Verzoeken tot inzage en verwijdering afhandelen, toestemmingen loggen, privacy-consents beheren. 3.9 2018
Action Logs Logboek van wie wat wanneer heeft aangepast in de backend. Handig voor audit en voor sites met meerdere redacteurs. 3.9 2018
Nieuwe backend (Atum) Volledig herwerkte admin-interface met Bootstrap 5, toegankelijker en responsive. 4.0 2021
Workflows Redactieproces met eigen stages en transities, mailnotificaties en per-stage rechten. 4.0 2021
Web Services API (REST) Volledige REST API op de core: artikels, gebruikers, menu's, categorieën leesbaar en schrijfbaar van buitenaf. 4.0 2021
WebAuthn Inloggen zonder wachtwoord, met hardware-sleutel of biometrie (vingerafdruk, Face ID). 4.0 2021
Scheduled Tasks Ingebouwde cron-jobs: backups, sitemaps, logs, API-koppelingen. Alles op schema, zonder extensie. 4.1 2022
Child Templates Een sjabloon "kopiëren" en alleen je eigen aanpassingen bijhouden. Updates van het oudersjabloon raken je maatwerk niet. 4.1 2022
Jooa11y (toegankelijkheid) Accessibility-checker in de frontend-bewerking. Signaleert WCAG-problemen terwijl je typt. 4.1 2022
Multi-factor authenticatie (MFA) Meerdere methodes combineerbaar, af te dwingen per gebruikersgroep. 4.2 2022
Guided Tours Rondleidingen in de backend voor klanten. Zelf aan te maken voor specifieke taken. 4.3 2023
Dark Mode backend Donkere modus voor het beheergedeelte, per gebruiker instelbaar. 5.0 2023
Schema.org-integratie Automatische structured data voor organisatie en sitenaam. Helpt Google je site beter te begrijpen. 5.0 2023
AVIF in Media Manager Ondersteuning voor AVIF: kleinere bestanden dan WebP of JPG met dezelfde kwaliteit. 5.0 2023
Nieuwe Articles-module Vervangt alle oudere "populaire / laatste / featured"-modules, met filteren op categorie, tags en custom fields. 5.2 2024
HTML-mailsjablonen Templates voor alle systeem-e-mails die je rechtstreeks in de backend aanpast. 5.2 2024
Strict routing & SEF Dubbele content en overbodige redirects vermijden via strengere URL-regels. Winst voor SEO. 5.2 2024
Content Versioning uitgebreid Versiegeschiedenis registreert nu ook wijzigingen aan custom fields en tags. 6.0 2025

Wat je hiermee doet

Gebruik je op dit moment extensies voor meertaligheid, extra velden, versiebeheer of redactieworkflows? Dan is de kans groot dat je dat niet nodig hebt — en dat je installatie onnodig zwaar is.

Ik doe regelmatig audits van bestaande Joomla-sites en zie telkens hetzelfde: extensies die de core dupliceren, updates die uitgesteld worden omdat het systeem te complex is geworden, en eigenaars die niet weten wat er allemaal al ingebouwd is.

Stuur me een bericht als je wil weten wat er in jouw Joomla-installatie onbenut blijft. Ik bekijk het met je.