Cerca

Usare il condizionale PHP con WPML

WordPress multilingua con Polylang
WordPress multilingua con Polylang

WordPress multilingua con plugin WPML

Un barbatrucco facile facile per chi gestisce un sito multilingua in WordPress ed il noto plugin WPML, come far apparire qualcosa in piรน (o di meno, o di diverso) se il sito viene visualizzato in italiano piuttosto che in inglese o in aramaico.

Basta utilizzare un po’ di PHP condizionale (lo abbiamo giร  visto riguardo WordPress e WooCommerce).

Possiamo, ad esempio, che un particolare box di informazioni appaia solo negli articoli in italiano ma non in quelli inย altre lingue, o che una particolare funzione si attivi solo quando si visualizzano le pagine in francese.

Ma vediamo nel dettaglio il codice che ci serve.

Nel file del tema relativo alla parte che vogliamo modificare, che sia l’header piuttosto che il singolo articolo, inseriamo questo codice PHP:

<?php if(ICL_LANGUAGE_CODE=='it'){ ?>
 
/* Inserire qui il contenuto (testo, PHP o HTML) */
/* da visualizzare solo nelle pagine in italiano */
 
<?php } ?>

Con lo stesso sistema, possiamo inserire un filtro o altra azione nel file functions.php del tema:

if(ICL_LANGUAGE_CODE=='it'){
 
/* Inserire la funzione da attivare */
/* solo nelle pagine in italiano */
 
}

Com’รจ facile immaginare, ci si puรฒ sbizzarrire sia con le funzionalitร  del PHP (con i vari else, elseif etc), sia con il codice permesso da WMPL.

Condividi se ti รจ piaciuto!

Altri articoli che potrebbero interessarti:

Immagine di Roberto Rota

Roberto Rota

Libero professionista, un "artigiano del web", lavoro nella comunicazione in rete da quando esiste Internet. Mi occupo principalmente di assistenza su WordPress e assistenza e consulenza WooCommerce, seguo la realizzazione di progetti web, in particolare siti di e-commerce, visibilitร  e comunicazione in rete. Il mio curriculum รจ su Linkedin, e mi puoi trovare anche su Instagram, FaceBook e Twitter.

DAI IL TUO CONTRIBUTO

Se il mio lavoro ti รจ stato di aiuto, contribuisci alla continuitร  di questo sito.
Basta una piccola donazione su PayPal, una pizza e una birra alla tua salute!

4 risposte

  1. Nel functions.php NON funziona. Sai per caso come mai? Forse c’รจ da dichiarare qualche variabile globale o includere qualche file esterno?
    Grazie.

    1. Ciao Vincenzo, io ho usato il condizionale descritto nel post in piรน di un’occasione direttamente nel file functions.php, e non ricordo di aver preso mai accorgimenti particolari.

      La sintassi รจ corretta?

      L’istruzione viene direttamente dalla documentazione di WPML, forse li c’รจ scritto qualcosa di piรน, hai guardato?

      rob

      1. Ciao si la sintassi รจ corretta. Ho trovato una soluzione comunque. La posto qui per coloro che magari si troveranno nello stessa condizione.

        Credo innanzitutto sia un problema del template che NON dichiara correttamente le globali di wpml. Comunque per risolvere usate:

        global $sitepress;
        $sitepress->get_current_language() <– come risultato รจ identico a ICL_LANGUAGE_CODE quindi tira fuori il codice lingua.

        Grazie 1000 per la risposta cosรฌ veloce ๐Ÿ™‚

        Vincenzo

Lascia un commento

Il tuo indirizzo email non sarร  pubblicato. I campi obbligatori sono contrassegnati *

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.