Come inserire posizioni moduli in un template personalizzato per Joomla! 4, una guida su come definire una posizione e inserirla all'interno del tuo template.
Seconda guida dedicata alla creazione di template personalizzati per Joomla! 4, direttamente collagata a Creare un template per Joomla! 4 prima parte: i file di base.
Riassumendo velocemente, nel precedente articolo ti ho spiegato come creare i file di base per un template di Joomla! 4, niente di sofisticato, il minimo per riuscire a visualizzare i contenuti degli articoli.
Un sito però non si limita al singolo articolo, ha bisogno di menù di navigazione, aree dedicate a scopi specifici, ad esempio una lista degli ultimi articoli pubblicati su un blog.
Ogni sito ha delle peculiarità che saranno definite in fase progettuale per cui ogni sito sarà "unico".
Tutti i siti Joomla! gestiscono queste peculiarità allo stesso modo, utilizzando i moduli, un esempio è il modulo collegato al menù di navigazione principale.
I moduli non si visualizzano a caso nelle pagine web, ma devono essere assegnati a delle specifiche posizioni che vanno definite in fase progettuale.
Oggi ti spiegherò come inserire posizioni dei moduli in un template personalizzato per Joomla! 4.
Utilizzando i file di esempio realizzati tramite il precedente articolo, inseriremo nel template 3 posizioni per 3 moduli specifici:
- Menù di navigazione principale
- Breadcrumb
- Footer
Primo passo: definisci i nomi delle posizioni:
Apri il file templateDetails.xml del tuo template personalizzato e cerca il tag </files>, dovresti trovarlo alla riga 15.
Subito dopo questo </files> iserisci questo codice:
<positions>
<position>navigazione</position>
<position>breadcrumb</position>
<position>footer</position>
</positions>
Salva il file per terminare.
Cosa hai appena fatto?
Hai inserito delle informazioni per Joomla!, dicendo che le posizioni del tuo template <positions> sono 3 e hanno dei nomi specifici definiti tramite il tag <postion>.
Ora dal backend potrai scegliere di inserire dei moduli in una di queste tre posizioni tramite l'apposito comando:

Secondo passo: come far visualizzare un modulo in una specifica posizione:
Dope aver definito i nomi, dovrai fare in modo di poter visualizzare i moduli nella posizione corrispendente, dovrai utilizzare una "chiamata" specifica:
<jdoc:include type="modules" name="nome-posizione" style="none" />
Questa "chiamata" esegue il rendering di un singolo modulo e utilizza 2 semplici attributi:
- name corrisponde alla posizione che hai precedentemente definito nel templateDetails.xml.
- style serve per fornire attributi aggiuntivi per controllare il layout e l'aspetto del modulo, se supportati.
Si può utilizzare eventualmente l'attributo title per definire il tipo di modulo desiderato.
Per inserire le chiamate nel tuo template apri il file index.php, alla riga 11 troverai il div "container", subito dopo l'apertura del div incolla questo codice:
<jdoc:include type="modules" name="navigazione" style="none" />
<jdoc:include type="modules" name="breadcrumb" style="none" />
subito dopo <jdoc:include type="component" /> incolla questo codice:
<jdoc:include type="modules" name="footer" style="none" />
Salva il file per terminare.
Hai appena inserito nel tuo template le chiamate alle posizioni che hai precedentemente predisposto.
Ora dal backend di Joomla! devi inserire dei moduli nelle posizioni create, vai alla sezione moduli e dovresti trovare già creati ed attivi il menù principale (Main Menù) e il modulo Breadcrums, assegnali rispettivamente alla posizione "navigazione" e "breadcrumb".
Per terminare crea un nuovo modulo di tipo footer e assegnalo alla posizione "footer".
Quando crei o pubblichi dei moduli ricorda di verificare l'assegnazione dei menù, nel caso impostala "su tutte le pagine".
Se hai fatto tutto correttamente vedrai sul front end del tuo sito apparire i moduli, ad inizio pagina il menù di navigazione che presumibilmente avrà solo una voce, subito sotto il percorso e a fondo pagina il footer.
Il tutto è ancora molto scarno visivamente per cui dovrai cominciare a migliorare la situazione, ti spiegherò come fare nel prossimo articolo: Aggiungere fogli di stile ad un template personalizzato per Joomla! 4