Une réponse mise à jour pour Wordpress 4+
La réponse de @ rofflox est toujours correcte, mais il y a eu quelques changements dans Wordpress qui peuvent avoir un effet lors de l'utilisation de sa fonction «en l'état» depuis WP 4.0.
La constante wp-config WPLANG
a été déconseillée au profit de la définition de la langue du site via une liste déroulante Settings->General
. Cela signifie que, après avoir changé la langue de votre site à Svenka (par exemple), l'administrateur de votre site va apparaître en anglais ... mais ce menu déroulant Langue du site en Settings->General
sera pré-sélectionné comme l' anglais (États-Unis) . Cela signifie que, si vous apportez des modifications à vos paramètres généraux ultérieurement et oubliez de choisir Svenka comme langue de votre site à nouveau, l'ensemble du site reviendra à l'anglais.
Je recommanderais de créer des fonctions dans votre functions.php
fichier comme ceci:
// Set the locale; original function from @rofflox
function vnmFunctionality_setLocale($locale) {
if (is_admin()) {
return 'en_US';
}
return $locale;
}
add_filter('locale', 'vnmFunctionality_setLocale');
// Enqueue a script to force-set the Language dropdown on the General Options page, just in case we forget about it later.
function vnmFunctionality_countryReminderScript($hook) {
if ($hook != 'options-general.php') {
return;
}
wp_enqueue_script('lang-reminder-script', get_template_directory() . '/js/site-language.js', array('jquery'), '1.0.0', true);
wp_localize_script('lang-reminder-script', 'langObject', array(
'lang' => get_option('WPLANG'),
));
}
add_action('admin_enqueue_scripts', 'vnmFunctionality_countryReminderScript');
Et puis un fichier Javascript appelé site-language.js
(enregistré dans un /js/
dossier de votre thème) comme ceci:
jQuery(document).ready(function($) {
$('select#WPLANG').val(langObject.lang).change();
});
Cela devrait présélectionner automatiquement la langue d'affichage actuelle du site dans la liste déroulante de la page Options, afin que vous n'ayez pas à vous souvenir de le faire manuellement à chaque fois.