web-dev-qa-db-fra.com

Comment installer un fichier .MO (fichier de langue) à utiliser dans le cadre d'un thème?

J'ai créé mon propre thème et je dois prendre en charge 3 langues. J'ai commencé par ajouter les fonctions gettext à mon modèle _e ("chaîne", "espace de noms"), etc., généré le fichier po avec Poedit, puis créé le fichier .mo pour l'espagnol (es_ES).

Ma configuration actuelle qui ne fonctionne pas> Mise à jour

wp-config.php

define ('WPLANG', 'es_ES');  

functions.php

define('TPL_LANGUAGES',TEMPLATEPATH.'/languages/');

function theme_init(){
    load_theme_textdomain( 'protoman', TPL_LANGUAGES);
}

add_action('init', 'theme_init');

langues mo fichier

themes/protoman/languages/es_ES.mo

index.php

    <ul>
      <li><a href="#"><?php _e('Home', 'protoman'); ?> </a></li>
      <li><a href="#"><?php _e('Account', 'protoman'); ?></a></li>
      <li><a href="#"><?php _e('Shop', 'protoman'); ?> </a></li>
      <li><a href="#"><?php _e('Corporate', 'protoman'); ?> </a></li>

Toujours pas de chance!

2
qodeninja

Vous devez load_theme_textdomain () dans votre thème.

Placez ceci dans le fichier de fonctions de thème:

function theme_init(){
    load_theme_textdomain('theme_name', get_template_directory() . '/languages');
}
add_action ('init', 'theme_init');

Ensuite, vous mettez vos fichiers de langue dans votre dossier thème/langues

vos fichiers de langue doivent être es_ES.mo et es_ES.po sans le domaine texte à l’avant car le codex indique File names such as: my_theme-sv_SE.mo will NOT work.

2
Brady