Clusit-Associazione Italiana per la Sicurezza Informatica
Il mio profilo su Linkedin
Il mio spazio su YouTube
Joomla Italia
Il mio profilo su vololibero.net
 
Album Picasa
 
La struttura dell'URI PDF Stampa E-mail
Joomla 1.5
Lunedì 02 Novembre 2009 14:00
struttura uri JoomlaL'URI (Uniform Resource Indicators) contiene tutte le informazioni necessarie per ottenere la giusta risposta alla nostra richiesta.
Consideriamo l'URI: http://miosito.it:8080/root/index.php?option=com_content#item4 e vediamo le parti di cui è composto.
http:// -> rappresenta lo schema
miosito.it:8080 -> è l'autority
/root/index.php -> è la path
option=com_content -> è la query
item4 -> si chiama fragment

Se consideriamo che il menu è lo strumento principale che un utente usa per la navigazione, esso conterrà una serie di items linkati a componenti interni o ad URI esterni. Un id unico distingue i diversi item menu, permettendoci di chiamare un componente senza inviare la query option e di riconoscere ed evidenziare la voce di menù che ha effettuato la chiamata, come attiva:
http://www.miosito.it/root/index.php?Itemid=4

Inoltre se un componente chiamato supporta differenti formati di output possiamo specificare questo parametro nella stringa query in questo modo
http://www.miosito.it/root/index.php?option=com_content&format=feed
dove feed è il formato che vogliamo in output.

Un'altro parametro importante che spesso troviamo nella query è task. Task indica a ciò che chiamiamo qual'è la performance che ci aspettiamo, esempio la visualizzazione sarà &task=view.
Quando creiamo i nostri URI personalizzati dobbiamo essere sicuri che non vadano in conflitto con qualche query del core, causando risultati inattesi.
Questo è un'elenco dei valori query del core:
format - Itemid - layout - limit - limitstart - no_html - option - start - task - tmpl - tp - vars - view - hidemainmenu (solo backend)

Quando chiediamo l'output di un URI dobbiamo usare il metodo statico JRoute. Così facendo non dobbiamo preoccuparci di tenere traccia del menu item ID. Ecco un'esempio di uso di questo metodo:
echo JRoute::_('index.php?option=com_content&task=view');

Se stiamo ussando questo metodo all'interno di un componente e sono link al componente stesso, possiamo non specificare l'option.
Non si codificano gli ampersand come per l'xhtml standard poichè ci pensa JRoute a farlo per noi.

Un'altro vantaggio nell'uso del metodo JRoute::_() è che se stiamo usando un SEO, questo metodo converte automaticamente gli indirizzi in indirizzi SEO.
 
 
Questo sito è dedicato alla mia ed altrui curiosità, come primordiale bisogno di conoscere, capire nella sua complessità ogni cosa. Questo sito è basato sul framework Joomla1.5.xx!. Ogni contenuto o script pubblicato è di libera consultazione e duplicazione purchè se ne citi la fonte. Clicca qui per votare