Negli appunti digitali di oggi vediamo come recuperare la lingua di chi naviga nel vostro sito e indirizzare automaticamente i vostri utenti usando una solo riga di codice PHP.
Questo snippets php può esservi molto utile sopratutto per coloro che devono realizzare siti multilingua. Grazie a questo codice potrete facilmente interpretare la lingua dei vostri visitatori senza che debbano per forza premere su una bandierina di traduzione.
Ecco il codice:
<?php $lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2); echo $lang; //restituisce i primi due caratteri di http accept language ovvero it o en etc ?>
Per realizzare il nostro selettore abbiamo usato la funzione $_SERVER usando il paramentro HTTP_ACCEPT_LANGUAGE che restituisce di fatto la lingua impostata dal browser. Usando poi la funzione substr di PHP si isolano i primi due caratteri ottenendo di fatto le sigle delle varie lingue così come siamo abituati: it, en,de etc..
Questa funzione è molto utile in quanto una volta ottenuta la lingua possiamo anche agire di conseguenza e impostare contenuto dinamico a seconda della lingua del visitatore.
Ecco un semplice, ma esplicativo, esempio d’uso:
if ($lang == "it"){ echo "<title>TargetWeb è un sito fantastico!</title>"; } else { //per tutte le altre lingue echo "<title>TargetWeb is an awesome site!</title>"; }//else scelta lingua
Questo era solo un piccolo esempio ma vi fa capire bene le potenzialità dello snippet che vi ho illustrato oggi, e che potrà benissimo sostituire le “classiche” e odiate bandierine di scelta.
Spero vi sia utile! Se ti è servito per i tuoi progetti fammelo sapere nei commenti!
Alcune lingue usano alcuni segni di punteggiatura come trattini e virgole (-,) per cui credo sarebbe meglio implementare un ulteriore controllo per togliere eventuali cose superflue che potrebbero compromettere il funzionamento dello script, per il resto lo script è molto semplice ma utile.