Cerca
Filtra la ricerca ...
Frase esatta
Categorie

Come recuperare la lingua corrente di Joomla via PHP

Oggi stavo lavorando ad un progetto ed il cliente è saltato fuori con una di quelle richieste strambe che fanno i clienti di solito 😛

Ho una pagina con la lista degli agenti nazionali e internazionali, con i relativi riferimenti ed email, il sito però è multilingua e devo stampare a video un titolo in H3 all’interno di un modulo che ho precedentemente customizzato, non potendo utilizzare semplicemente J::Text facendo l’override della lingua perchè non è il titolo del modulo ed il modulo stesso è richiamato all’interno di una pagina con loadposition, per la serie come complicarsi la vita 🙁

Alla fien ho optato per creare qualche riga di codice PHP utilizzando le API di Joomla, così da recuperare la lingua corrente del navigatore, fare delle condizioni e poi stampare con un echo il testo che mi serve.

Bene, premessa fatta passiamo al codice .

Per prima cosa dichiaro le variabili :

$lang = JFactory::getLanguage(); : mi permette di fare un’interrogazione

$currentlang = $lang->getTag(); : prelevo il tag internazionale delle lingue (it-IT, en-GB, fr-FR, ecc…)

$it_title e $en_title : mi servono per valorizzare il titolo, rispettivamente in lingua italiana ed inglese

a questo punto scrivo la mia condizione, quindi se la lingua corretta è l’italiano (it-IT) stampo a video il titolo in italiano, altrimenti (else) lo stampo in lingua inglese.

Per fortuna il sito è solo in due lingue 🙂

Diversamente sarebbe necessario scrivere più condizioni, una per ogni lingua per essere precisi, una cosa tipo :

Questa parte di codice l’ho inserita all’interno di un modulo che poi ho richiamato da un pagina con : {loadposition mia_posizione_modulo_nel_template} .

Come inserire codice PHP esterno in un modulo o una pagina Joomla.

Per inserire il codice PHP esterno a Joomla che trovate sopra, ho utilizzato Sourcer , un plugin sviluppato da NoNumber, un programmatore Joomla direi geniale 🙂

Potrebbe interessarti anche ...

2 commenti su “Come recuperare la lingua corrente di Joomla via PHP”

  1. Ciao,

    una semplice domanda: dove trovo una lista dei tag (es. “it-IT”, “de-DE”, etc.) delle varie nazioni ?

    A volte, bisogna verificare e, se non si sa il tag esatto … è un bel problema.

    Infatti, ho uno script

    … if ($codice == “en-EN”) …

    ma, solo dopo, ho capito che il tag esatto era “en-GB” !

    Sarei grato per una risposta !

    Grazie e buon pomeriggio

    Rispondi

Lascia un commento

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.