JOOMLA – TUTORIAL – CREARE UN PACKAGE

Inizio una serie di articoli dedicati a Joomla, mirati alla realizzazione di estensioni per joomla. I vari articoli faranno riferimento alla versione 2.5 di Joomla, che è attualmente la versione a supporto LUNGO PERIODO, in attesa dell’uscita della versione 3.5, come è ben visibile in questo articolo.

Per estensione si intende un addon che aggiunge funzionalità al comportamento base di Joomla.

Si distinguono 3 tipi di estensioni che offrono diversi tipi di funzionalità:

  • plugin
  • modulo
  • componente
Il plugin implementa della funzionalità che si attivano al verificarsi di determinati eventi. Ad esempio alcuni plugin offrono l’inserimento di gallerie in articolo invocandoli tramite tag: {tag}nome_gallery{/tag}, altri invece completano le informazioni scambiate con il server tramite query aggiuntive.
Il modulo è un elemento di contenuto e occupa posizioni ben precise all’interno del nostro sito. Un esempio di modulo è il menù di navigazione.
Il componente è un elemento che aggiunge nuove funzionalità al nostro sito. Esempio di componenti sono le gallery fotografiche, linkabili tramite una voce del menù.
Le estensioni vengono installate su Joomla tramite file zip che contengono i sorgenti e il  file descrittore xml che contiene le indicazioni per una corretta installazione.
E’ possibile raggruppare le estensioni in un unico artefatto detto package. Il package presenta un descrittore xml che contiene le informazioni relative le estensioni all’interno del nostro package.
Immaginiamo di voler realizzare un sistema live assistant, un sistema di chat per gli utenti del sito. In questo sistema sono presenti un componente per la gestione delle chat e un modulo per l’accesso alla funzionalità. Pertanto il nostro package si presenterà come un file zip contenente un descrittore xml pkg_liveassistant.xml e una directory packages contenente gli zip dell’estensione componente e dell’estensione modulo.
Vediamo più in dettaglio la struttura del nostro descrittore:

I tag evidenziati descrivono le estensioni presenti all’interno del package.

Nei prossimi articoli vedremo come realizzare il nostro componente e il nostro modulo.