Traduire un thème supportant i18n

L’offre de thèmes gratuits pour WordPress est plus vaste côté anglo-saxon. Pour les traduire en français, une solution consiste à  passer en revue tous les fichiers php du thème et à  traduire les chaines de caractères. Certains thèmes sont cependant prévus pour être traduits simplement.Pour cela il suffit que le concepteur du thème ait suivi les préconisations des créateurs de WordPress, à  savoir le support i18n (i18n est l’abréviation de « internationalization » qui comprend 18 lettres entre le i et le n). WordPress utilise les librairies et les outils gettext pour l’internationalisation. La préparation d’un thème pour l’internationalisation donnera lieu à  un autre article plus technique. Cet article n’abordera que la précédure pour traduire un thème déjà  prêt.

Les fichiers .PO

Un thème supportant i18n contient un ou plusieurs fichier ayant pour extension .PO.
En générale le fichier .PO contenant la traduction franà§aise se nomme FR-fr.po. S’il n’existe pas il faut le créer, de préférence à  partir du fichier .PO d’une autre langue ou à  partir du fichier .POT qui est en fait un modèle pour les fichier .PO

Ce fichier contient des en-têtes ainsi qu’une liste d’entrées de ce type :

#: 404.php:4
msgid "Error 404 - Not Found"
msgstr "Erreur 404 - Page introuvable"

msgid est la chaîne de caractère originale.
msgstr est la traduction.

Chaque section msgstr doit donc être traduite.

Attention : en général les installations par défaut de WordPress sont en UTF-8. Vérifiez bien que vous enregistrez votre fichier traduit dans le bon encodage.

Le fichier .MO

Une fois la traduction effectuée, il faut générer un fichier ayant pour extension .MO qui est une version compilée du fichier .PO, permettant une extraction plus rapide des traduction.

Sous Linux, vérifiez que l’outil msgfmt est installé (sinon installez gettext) et consultez éventuellement le manuel.

La commande suivante :

msgfmt -o fr_FR.mo -v fr_FR.po

créé le fichier fr_FR.mo, une version compilée du fichier fr_FR.po

Le fichier .PO obtenu n’a plus qu’à  être placé dans le répertoire du thème à  traduire.