Voilà encore un sujet auquel on est régulièrement confronté lors du développement d’un site Internet : la traduction d’un plugin ou d’un thème.
Pour cela j’utilise Poedit c’est un petit freeware sympa qui « fait la job » comme disent nos cousins caribous ;).
Plusieurs possibilités :
- Le plugin n’est pas traduit du tout et son auteur n’a pas prévu qu’il le soit (cas très rare), euh… A moins de tout réécrire, oubliez…
- Il a été codé pour être traductible mais ne l’est pas encore, pas de temps à perdre, au boulot ! Bon courage 😉 !
- Il a déjà été traduit mais :
- par l’équipe de développement qui voulant vite et bien, s’est servie de Google Translate…
- par quelqu’un de trop coincé ou pas assez 🙂
Dans tous ces cas de figure, l’adage : « On est jamais mieux servi que par soi même » prend tout son sens.
Pour le premier cas de figure, il n’existe aucune solution facile, mais pour les autres, voyons comment procéder.
Pour les curieux, quand un plugin a prévu d’être traduit, les choses que l’on retrouve toujours se présente, au sein du code, de la façon suivante :
- Un appel de la fonction de WordPress « load_plugin_textdomain« .
Celle-ci contient plusieurs paramètres mais notons juste son premier qui est un identifiant unique qu’on retrouvera dans tous les appels de traductions.
Cette fonction, donc, charge les chaînes traduites du plugin (si elles existent), - et dès qu’une chaîne devra être présenter à l’utilisateur les syntaxes suivantes (pour l’exemple je prends le plugin Better Delete Revision) : __( ‘Better Delete Revision’, ‘bdr’ ) ou encore _e( ‘Better Delete Revision Manager’, ‘bdr’ ) et bien d’autres formes. Vous noterez la présence de ‘bdr‘ qui, dans ce cas, est l’identifiant unique.
Donc revenons-en à nos moutons. Généralement on trouve un sous-réperoire dans le dossier du plugin (ou du thème) nommé « lang » et qui contient tout un tas de fichiers aux extensions PO et MO.
La version PO est la version « texte » sur laquelle vous allez travailler, la version MO est la version compilée qui servira sur le site. Si le fichier qui contient dans son nom la chaîne « fr_FR » est présent vous n’avez qu’à l’éditer et à remplacer les syntaxes qui ne vous conviennent pas et éventuellement à ajouter celle qui ne sont pas encore traduites (en bleu foncé en haut à gauche dans l’illustration jointe).
Si il n’y pas de fichier « fr« , pas de panique, il vous suffit de faire une copie du fichier d’origine (généralement un fichier « en_US« ) de le renommer avec « fr_FR » et de commencer la traduction 🙂 …
Sur certaines extensions (ou thèmes), il est bon, de temps en temps, de faire un petit rafraîchissement des chaînes traduites. Pour cela il faut avoir tout le dossier du plugin/thème sur son PC et cliquer dans le menu sur « Catalogue » -> « Mise à jour depuis les sources« . Ainsi, le logiciel va re-parcourir tous les documents « php » de l’arborescence et va supprimer du fichier PO, toutes celles qui ont disparu, modifier celles qui l’auront été et ajouter celles qui ne l’étaient pas encore…
C’est long et fastidieux, mais le jeu en vaut la chandelle. De plus sur certaines extensions « premium » les auteurs vous offrent souvent une licence gratuite pour le boulot fourni 🙂 .
Vous savez ce qui vous reste à faire…
Salut! C’est une bonne solution d’utiliser https://poeditor.com, une plateforme de localisation et une alternative a Poedit outil.
Bonjour Greg :).
Oui il a l’air bien aussi. Tu sais si il offre quelque-chose de plus que Poedit ?