J'ai un plugin à traduire. J'ai effectué les tâches suivantes:
1. Chargé le TextDomain
$my_td = 'mysignup';
function my_signup_textdomain_init() {
load_plugin_textdomain( $my_td, false, dirname( plugin_basename( __FILE__ ) ) . '/languages/' );
}
add_action('plugins_loaded', 'my_signup_textdomain_init');
2. Ajout de fichiers de langue (po, pot, mo) dans wp_plugin_folder\my_signup\languages
(pour Bengali bn_BD)
3. Changement du code de langue dans le fichier wp_config.php
define('WPLANG', 'bn_BD');
Mais le problème est que rien n'est changé. Je ne suis pas sûr de ce que j'ai mal fait.
Maintenant, j'ai besoin de savoir comment puis-je tout tester, si ce que j'ai fait est bien et comment puis-je résoudre le problème.
J'ai mes erreurs! J'ai tout bien fait sauf une chose, la configuration textdomain.
J'ai oublié que j'ai défini la variable $my_td
en dehors de la fonction. Pour cette raison, mon textdomain était manquant. J'ai donc créé la variable globale comme suit:
$my_td = 'mysignup';
function my_signup_textdomain_init() {
global $my_td;
load_plugin_textdomain( $my_td, false, dirname( plugin_basename( __FILE__ ) ) . '/languages/' );
}
add_action('plugins_loaded', 'my_signup_textdomain_init');
En tout cas merci d'avoir essayé de m'aider.
** Remarque:
mysignup-bn_BD.mo
oumysignup.mo
fonctionneront tous les deux. Mais mysignup-bn_BD.mo est un moyen dynamique.
Pour les plug-ins utilisant le répertoire désigné par load_plugin_textdomain, les fichiers de langue doivent être nommés "domain-locale.mo".
Donc, dans votre cas, les noms de fichiers doivent être mysignup-bn_BD.mo
.