web-dev-qa-db-fra.com

Problèmes de localisation

Je crée un plugin et j'ai mis:

define ('WPLANG', 'it_IT');

dans le fichier wp-config.php.

Après le nom du plugin dans l'en-tête de la déclaration du plugin:

* Text Domain: endpoint
* Domain Path: /languages/

Pour le domaine de charge:

add_action( 'plugins_loaded', 'myplugin_load_textdomain' );

function myplugin_load_textdomain() {
    load_plugin_textdomain( 'endpoint', false, dirname(  __FILE__  ) . '/languages/' ); 
}

Dans les langues, j'ai créé le fichier pot, po et mo avec les noms suivants: end-point.pot, end-point-it_IT.po et end-point-it_IT.mo.

Je suis passé à l'italien mais rien n'a changé.

De l'aide?

3
Salvio

1) En supposant que vous utilisez WordPress 4.x. La constante WPLANG ne fait rien. WordPress 3 et inférieur ont défini la langue par défaut dans wp-config.php mais, depuis WordPress 4, le paramétrage de la langue de votre site est effectué via la page Paramètres généraux de votre espace administrateur. Allez dans Paramètres> Général et faites défiler vers le bas, où il est indiqué "Langue du site" à côté d'une liste déroulante.

2) L'argument dirname(__FILE__).'/languages/' est faux car il devrait s'agir d'un chemin relatif. Utilisez dirname(plugin_basename(__FILE__)).'/languages/'

1
Tim

Ok j'ai fait une erreur avec dirname (FICHIER)./languages ​​/ et le fait que debuggin via load_plugin_textdomain, j’ai vu qu’il créait le nom du fichier avec la domaèn passée en argument à la fonction.

Merci quand même.

0
Salvio