Come usare i breadcrumbs di Joomla 1.5 con JPathway

Una funzionalità molto apprezzata ed utile in ogni sito è la presenza di informazioni di orientamento, ovvero segnali che consentono all'utente di capire dove si trova all'interno del sito, e come è arrivato a quella pagina. Joomla permette di realizzare questa funzione attraverso la funzione pathway ed il modulo Breadcrumbs, fornito in ogni installazione.

Joomla basa la propria architettura sui componenti: a loro è delegata la comunicazione dell'attuale posizione nel sito.

Realizzando un componente è bene farlo comunicare con il resto del framework in modo che esso si integri alla perfezione in Joomla.

Passiamo al codice

Supponiamo di avere un componente che si occupa di gestire una galleria fotografica. Le fotografie vengono organizzate in categorie. Quando visualizziamo il contenuto di una categoria vogliamo che il nostro modulo Breadcrumbs indichi in quale categoria ci troviamo.

Apriamo la view del nostro componente (com_galleria/views/category/view.html.php).

All'interno della classe GalleryViewCategory extends JView {} troviamo la funzione display(), che permette di preparare l'output prima di spedirlo al file tmpl/default.php per essere visualizzato.

Dobbiamo innanzitutto recuperare la pathway corrente chiedendola all'oggetto $mainframe

$pathway    =& $mainframe->getPathway();

$pathway è un oggetto di classe JPathway.

Quindi possiamo aggiungere un elemento con il comando

$pathway->addItem(JText::_('Categoria: '). $categoria->nome, '');

Dove $categoria è un oggetto fornito dal modello, richiamato in precedenza con il comando

$categoria    =& $this->get('categoria');

In questo modo quando viene caricata questa view del componente, il modulo breadcrumb visualizzerà il nome della nostra categoria.

Un oggetto JPathway ci permette anche di modificare completamente le informazioni visualizzate dal modulo Breadcrumbs, attraverso il metodo setPathway.

Tags: , , , , ,
Articoli correlati:

Lascia un commento

Nome (obbligatorio)

Mail (non sarà pubblicata) (obbligatoria)

Sito web

-->