WordPress : Comment créer une traduction spécifique à un thème de buddypress ?
Initialement demandé sur les forums BuddyPress :
À des fins de distribution, j’aimerais inclure mes fichiers de langue buddypress personnalisés dans mon thème aux côtés de mes autres fichiers de langue. Peu importe ce que j’essaie, je ne peux afficher les fichiers de langue que si je les copie wp-content/languages
comme décrit dans le codex buddypress. Je pensais que ce qui suit fonctionnerait, mais ce n’est pas le cas:
function load_buddypress_language_files() {
load_theme_textdomain('buddypress', get_template_directory() . '/lang');
}
add_action('plugins_loaded', 'load_buddypress_language_files');
C’est possible non ?
WP : 3.5.1 BP : 1.7.2
Solution n°1 trouvée
Tout d’abord, les actions ajoutées au plugins_loaded
crochet ne fonctionneront pas à partir du thème functions.php
ou de tout fichier de thème car à ce stade, elles seront déjà déclenchées (trop tard à partir des fichiers de thème).
Ce que vous pouvez faire, c’est d’accrocher votre action after_setup_theme
et de décharger d’ buddypress
abord le domaine de texte, puis d’ajouter votre buddypress
fichier de domaine de texte personnalisé. La raison en est que WordPress ne chargera aucun fichier de traduction pour les domaines de texte déjà ajoutés :
add_action('after_setup_theme', 'replace_bp_mofile');
function replace_bp_mofile() {
$mo_file = get_stylesheet_directory() . '/languages/' . sprintf( 'buddypress-%s.mo', get_locale() );
if (file_exists( $mo_file )) {
unload_textdomain('buddypress');
load_textdomain('buddypress', $mo_file);
}
}
0 commentaire