Come modificare l’output di mod_mainmenu

Bookmark and Share

Vediamo come possiamo modificare l'output del modulo mod_mainmenu, per esigenze di stile.

Il modulo, in stile menu lista, elenca le voci del menu in modo che siano racchiuse in un tag span, quindi in un tag a, quindi li ed infine ul.

Visualizzazione del codice di mod_mainmenu

Come possiamo modificare questo output?

Joomla ha un sistema molto avanzato (chiamato layout override) che consente ad ogni template di modificare l'output di un componente o modulo del core.

Questo significa che non è necessario modificare il codice di Joomla per ottenere soluzioni personalizzate, ed è più semplice mantenere aggiornato correttamente il proprio sito web.

Il modulo mod_mainmenu, responsabile della visualizzazione dei menu, è diverso dagli altri moduli in quanto l'output non viene generato nel template, ma nel file mod_mainmenu/helper.php. Questo rende difficile modificarlo tramite un layout override.

Possiamo però fare una operazione di sostituzione delle stringhe sull'output. Creiamo una cartella mod_mainmenu nella directory html/ del nostro template e copiamoci il contenuto della cartella modules/mod_mainmenu/tmpl.

img-3

Modifichiamo il file default.php. Scorriamo fino all'ultima linea

img-4

Ed inseriamo il seguente codice al suo posto.

img-6

Questo spezzone di codice indica a Joomla di racchiudere il nome della voce di menu in un ulteriore tag span, che potremo ad esempio utilizzare per dare particolari stili al nostro menu usando i CSS.

img-7

Tags: , ,

Lascia un commento

Nome (obbligatorio)

Mail (non sarà pubblicata) (obbligatoria)

Sito web