Quel code de localisation est utilisé dans mon site WordPress?

Un code de localisation est composé de deux blocs de deux lettres séparés par une barre de soulignement : 

  • les deux premières lettres, toujours minuscules, identifient la langue (ex : fr, en, es)
  • les deux dernières lettres, toujours majuscules, identifient la culture (ex : US, FR, CA, GB, ES, AR).

De ces deux blocs peuvent découler une multitude de codes de localisation. (ex : fr_CA, fr_FR, en_US, en_GB, en_CA, es_ES, es_AR).

▼Publicité

Lorsque nous travaillons à localiser un site WordPress, il est important de connaître le code de la localisation que notre site utilise. En effet, le code de localisation devra faire partie du nom du fichier .po et de sa version compilée .mo (ex : fichier  fr_FR.mo). Ces fichiers contiennent la localisation des expressions utilisées dans le site Web. Si le nom du fichier ne correspond pas au code de localisation, il sera simplement ignoré alors les expressions ne seront pas traduites.

S'il est relativement facile de savoir si le site est en français en regardant les libellés dans le tableau de bord, il est légèrement plus compliqué de savoir si le code de localisation est fr_FR ou fr_CA. Cette information sera essentielle pour pouvoir localiser correctement notre site.

Dans le tableau de bord

Le choix de la langue est effectué dans le tableau de bord, option Réglages / Général. WordPress recherchera les langues disponibles dans les fichiers installés et nous présentera une liste déroulante pour choisir celle que nous désirons.

Choix de la langue dans le tableau de bord

Dans l'image précédente, on sait que le site est en français mais on ne connait pas le code de localisation exact. Il faut donc aller voir un peu plus loin...

Dans le système de fichiers

Comment WordPress saura-t-il quelles langues sont installées ? C'est la fonction wp_dropdown_languages(), codée dans le fichier wp-includes/l10n.php, qui se chargera du travail.

L'anglais (en_US) est toujours disponibles. Les autres langues sont celles retrouvées dans le dossier suivant :

    www\votresite\wp-content\languages

WordPress recherchera dans ce dossier les fichiers dont l'extension est .mo. Les fichiers débutant par « admin- » et par « continents-cities- » seront exclus de la liste.

Ainsi, avec la liste des fichiers présentée dans l'image suivante, on obtiendra deux langues : l'anglais, qui est toujours présent, ainsi que le français grâce au fichier fr_FR.mo. 

Ainsi, en regardant les fichiers présents dans ce dossier, on peut connaître le code de localisation utilisé par notre site Web. Par exemple, si le tableau de bord indique que la langue est « Français » et que le dossier présente le fichier fr_FR, on saura qu'il s'agit là du code de localisation utilisé.

Langues disponibles dans le dossier languages

Dans la base de données

Il est également possible de retrouver le code de localisation directement dans la base de données. 

La table wp_options (où wp_ sera remplacé par le préfixe que vous aurez choisis) contient une série de paires Option - Valeur (champs option_name - option_value). L'option WPLANG est celle à rechercher pour trouver le code de localisation utilisé.

Code de langue dans la BD

Par programmation

Il est également possible de retrouver le code de localisation à l'aide de la fonction get_bloginfo(). Un appel à cette fonction dans le fichier functions.php de votre thème enfant vous permettra de voir le code effectivement utilisé par votre site. 

Attention : vous ne pouvez pas simplement appeler get_bloginfo() au début de functions.php car les fonctions WordPress ne sont pas entièrement chargées à ce moment. Vous devez l'appeler à l'intérieur d'une autre fonction qui, elle, sera appelée au moment opportun grâce au mécanisme des hooks.

Ex :

PHP

add_action('wp_loaded','annie_test');   // exécutera la fonction annie_test quand WordPress sera entièrement chargé

 

function annie_test() {

    $langue = get_bloginfo( 'language' );

}

Si on utilise un IDE comme CodeLobster pour lancer notre programme, nous pourrons utiliser le débogueur pour voir la valeur de la variable ainsi créée.

Affichage du code de localisation

Pour plus d'information

« wp_dropdown_languages () ». WordPress code reference. https://developer.wordpress.org/reference/functions/wp_dropdown_languages/

« wp_get_available_translations () ». WordPress code reference. https://developer.wordpress.org/reference/functions/wp_get_available_translations/

« WordPress translations API ». WordPress API. http://api.wordpress.org/translations/core/1.0/

« Localisation linguistique ». Wikipédia. http://fr.wikipedia.org/wiki/Localisation_linguistique

« Liste des codes ISO 639-1 ». Wikipédia. http://fr.wikipedia.org/wiki/Liste_des_codes_ISO_639-1

« Internationalization - 52 locales ». WP Central. http://wpcentral.io/internationalization/

Merci de partager ! Share on FacebookTweet about this on TwitterShare on Google+Share on LinkedInPin on PinterestShare on StumbleUponEmail this to someone
Catégories