Modifier les traductions d’un plugin WP

Il arrive souvent que les traductions de plugins soient incomplètes ou obsolètes. Afin d’avoir un front office parfaitement traduit, il convient donc de modifier ces traductions.
Les fichiers .mo et .po
Ces fichiers contiennent la traduction en différentes langues de votre thème ou de vos plugins. Ils sont généralement stocké dans le répertoire de votre plugin et se nomment <textdomain>-fr_FR.mo et <textdomain>-fr_FR.po. La valeur <textdomain> étant souvent le nom du plugin. Pour rappel vous pouvez éditer seulement le fichier .po (le .mo étant sa version compilé).
Pour éditer un fichier .po il faut utiliser un éditeur comme POEdit.
Nous serions tenté de mettre à jour ces fichiers directement dans le répertoire du plugin mais ce serait un erreur car à la prochaine mise à jour du plugin, vos modifications seront perdues.
Surcharger les fichiers de traductions
La seule bonne méthode est donc d’appeler vos propres fichiers de traduction en lieu et place de ceux du plugin. Pour cela il faut créer un répertoire dans votre thème (par exemple « languages ») et copier les fichiers .mo et .po que vous souhaiter modifier dans ce répertoire.
La fonction ci dessous (à placer dans le fichier functions.php de votre thème permet de surcharger le fichier de traduction d’un plugin par votre traduction située dans le répertoire « languages » de votre thème
/*******************************
* Override plugin languagee *
*******************************/
function override_plugin_language($textdomain){
$override_language_file = get_stylesheet_directory() . '/languages/'. $textdomain. '-fr_FR.mo';
unload_textdomain($textdomain);
load_textdomain($textdomain, $override_language_file );
//load_textdomain($textdomain, $original_language_file );
}
override_plugin_language('<nom_du_plugin>'); // Remplacer <nom_du_plugin> par la valeur adéquate (exemple buddypress)
A ce stade, vous avez surcharger les fichiers de traduction de votre plugin par les votre mais ceux-ci sont identiques.
Modifier votre fichier .po et le compiler
Grâce à votre éditeur (POEdit par exemple) vous pouvez ouvrir et modifier le fichier .po de votre plugin situé dans le répertoire « languages » de votre thème. Effectuez toutes vos modifications, enregistrez et compilez ce fichier pour obtenir le .mo.
Petite astuce : vous pouvez rechercher la chaîne de caractère à modifier dans POEdit 😉