Joomla: il CMS community nato dalla scissione di Mambo

Joomla nasce nel 2005 come fork di Mambo: architettura MVC in PHP, sistema di estensioni, ACL e gestione dei contenuti guidata dalla community open source.

Open SourceWeb Open SourceJoomlaCMSPHPCommunity

La scissione da Mambo

Nel 2005 la comunità di sviluppatori di Mambo, uno dei CMS open source più diffusi, entra in conflitto con Miro, la società che ne detiene il marchio e la governance. La disputa riguarda il controllo del progetto: la fondazione creata da Miro limita l’autonomia degli sviluppatori volontari. Il nucleo principale del team di sviluppo decide di abbandonare Mambo e di fare un fork del codice sorgente. Nasce così Joomla, il cui nome deriva dalla parola swahili jumla, che significa “tutti insieme”.

Il fork non è solo tecnico ma soprattutto organizzativo: Joomla adotta fin dall’inizio un modello di governance comunitaria, con decisioni prese collettivamente e trasparenza nei processi. È una risposta diretta al problema che aveva causato la scissione.

Architettura e contenuti

Joomla è scritto in PHP e utilizza MySQL come database. L’architettura segue il pattern MVC (Model-View-Controller), che separa la logica applicativa dalla presentazione. I contenuti sono organizzati in articoli, raggruppati in categorie e sezioni, con un sistema di menu che definisce la navigazione del sito.

Il sistema di template permette di separare completamente il design dalla struttura dei contenuti: è possibile cambiare l’aspetto del sito senza modificare i dati. I template utilizzano posizioni modulo predefinite dove inserire blocchi di contenuto dinamico.

Estensioni e ACL

L’architettura a estensioni è il punto di forza che posiziona Joomla tra WordPress — orientato al blog e alla semplicità — e i framework di sviluppo puri. Le estensioni si dividono in componenti (applicazioni complete), moduli (blocchi visuali), plugin (intercettori di eventi) e template. Questa tassonomia permette di estendere il CMS in modo strutturato, senza modificare il nucleo.

Il sistema di ACL (Access Control List) gestisce i permessi degli utenti a livello granulare: chi può creare contenuti, chi può pubblicarli, chi può amministrare sezioni specifiche. Per siti con redazioni multiple o workflow editoriali complessi, questa funzionalità è essenziale.

Una posizione intermedia

Joomla occupa una nicchia precisa nell’ecosistema dei CMS: più strutturato di WordPress per la gestione di siti complessi, ma più accessibile di un framework di sviluppo come Zend o Symfony. La comunità è il motore del progetto, producendo documentazione, estensioni e traduzioni in decine di lingue. Per organizzazioni che necessitano di un portale articolato senza investire in sviluppo custom, Joomla rappresenta un punto di equilibrio tra flessibilità e facilità d’uso.

Link: joomla.org

Vuoi supporto? Sei sotto attacco? Stato dei servizi
Vuoi supporto? Sei sotto attacco? Stato dei servizi