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
Non fornisco assistenza gratuita sugli articoli che ho scritto nè personalizzo il codice in modo gratuito, se vuoi mi chiedi una consulenza nella sezione contatti. Se devi postare codice usa servizi come https://codeshare.io . Grazie della comprensione. Alessio

Lascia un commento

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