Formation PUB020 : WordPress, 2023 Localisation d'un site WordPress

20.5 Localisation d'un thème « prêt pour la traduction »


La localisation d'un site WordPress peut être une tâche assez simple si le thème utilisé a été conçu en conséquence, autrement dit s'il a été correctement internationalisé. Et même pour les thèmes qui n'ont pas prévu la possibilité de traduction, il est possible d'y arriver.

Débutons par le scénario le plus facile : le thème est prêt pour la traduction.

Emplacement des fichiers de localisation

Les thèmes internationalisés contiennent un ou plusieurs fichiers de localisation. Il s'agit de fichiers portant l'extension .po (Portable Object) ou .pot (Portable Object Template).

Les fichiers de localisation sont généralement placés dans le dossier wp-content/languages/themes. Leur nom sera sous la forme mon-domaine-de-localisation-fr_CA.po.

Rappel : le domaine de localisation est précisé dans le fichier style.css.

Certains thèmes placent plutôt leurs fichiers de localisation dans le dossier wp-content/themes/nomdutheme/languages. À ce moment, leur nom sera simplement le code de localisation, par exemple fr_CA.po. Cette pratique est aujourd'hui moins utilisée puisque les fichiers de localisation seront écrasés lors d'une mise à jour du thème.

Notez que certaines chaînes peuvent être retrouvées dans une des tables de localisation globales du site (et non du thème), qui se trouvent dans le dossier wp-content/languages.

Retrouver le domaine de localisation

Puisque le domaine de localisation pourrait faire partie du nom du fichier selon les options que vous choisirez, vous devez retrouver cette information.

Si vous localisez un thème, par exemple le thème parent que vous avez choisi, vous retrouverez cette information dans l'en-tête de son fichier style.css.

Fichier style.css

/*
    Theme Name: ...
    Description: ...
    Author: ...
    Author URI: ...
    Theme URI: ...
    Version: ...
    Requires at least: ...
    Tested up to: ...
    Requires PHP: 7.0
    License: GNU General Public License v3 or later.
    License URI: https://www.gnu.org/licenses/gpl-3.0.html
    Text Domain: mon-domaine-de-localisation
    Tags: ...
*/

Fonctionnement des fichiers .po

Les fichiers .po et .pot ne sont pas propres à WordPress. Ils sont utilisés par de nombreux sites en PHP et d'applications écrites dans d'autres langages.

Ces fichiers .po et .pot, de même que les outils et techniques qui permettent d'internationaliser puis de localiser un site Web, font partie d'un package nommé gettext.

Les fichiers .po et .pot contiennent une série de clés auxquelles correspondent une chaîne dans la langue originale (généralement anglais) et que vous pouvez traduire dans la langue désirée.

Voici un extrait de ce fichier ouvert dans un éditeur de texte simple :

Fichier admin-fr-CA.po

#: wp-admin/includes/media.php:2726 wp-admin/includes/media.php:2728
msgid "Search Media"
msgstr "Rechercher un fichier média"

#: wp-admin/edit-form-comment.php:105
msgid "Pending"
msgstr "En attente"

#: wp-admin/includes/bookmark.php:236
msgid "Could not insert link into the database."
msgstr "Impossible d’insérer le lien dans la base de données."

Pour éditer un fichier .po, je vous propose deux alternatives :

Localiser un thème à l'aide de Loco Translate

Loco Translate n'a pas besoin du fichier .po ni du fichier .pot pour effectuer la localisation. En effet, puisqu'il est intégré au site WordPress, il saura retrouver lui-même ces fichiers. Il pourra même les créer s'ils sont inexistants.

  • D'abord, installez l'extension Loco Translate.
  • Dans le tableau de bord, cliquez sur l'option de menu Loco Translate.

    Loco Translate

  • Cliquez sur Voir tous les thèmes.
  • Cliquez sur le thème que vous désirez localiser.
  • Cliquez sur Nouvelle langue.
  • Choisissez la langue à utiliser (ex : Français du Canada).
  • Il est fortement conseillé d'utiliser l'emplacement système pour .po et .mo qui seront générés. Assurez-vous cependant de prendre une sauvegarde de ces fichiers afin qu'ils ne soient pas écrasés lors d'une mise à jour.

    Loco Translate

  • Cliquez sur Commencer la traduction.
  • L'interface vous présente chacune des chaînes qui peuvent faire l'objet d'une localisation. Vous devez entrer la traduction désirée pour chacune d'entre elles.

    Si elles présentent des caractères spéciaux, par exemple %s pour un espace, laissez ces caractères en place dans la chaîne traduite.

    Loco Translate

    Notez qu'il y a possibilité d'automatiser cette tâche à l'aide du bouton Auto mais vous devez pour cela vous abonner à un service de traduction payant tel que DeepL Translator, Google Translate, Microsoft Translator ou Yandex.Translate.

  • Dès que vous cliquez sur le bouton Enregistrer, les fichiers .po et .mo sont exportés vers le dossier que vous avez configuré plus tôt.

Voici un exemple de chaînes non localisées à gauche et localisées à droite.

Loco Translate Loco Translate

Localiser un thème à l'aide de POEditor

POEditor a besoin que vous lui donniez un fichier .po ou .pot pour qu'il sache quelles chaînes doivent être traduites.

Si le code de localisation actif est fr_CA, commencez par rechercher la présence du fichier mon-domaine-de-localisation-fr_CA.po ou mon-domaine-de-localisation.pot.

S'il n'existe pas :

  • Si un autre fichier .po ou .pot existe pour ce thème, copiez-le sous le nom mon-domaine-de-localisation-fr_CA.po.
  • Il est inutile de renommer le fichier .mo associé car il s'agit d'un fichier qui devra être recompilé.
  • Vous ne pouvez pas prendre le fichier .po d'un autre thème, les chaînes qui y sont présentes ne seront pas les bonnes. Si le thème ne présente pas de fichier .po ni de fichier .pot, vous devrez soit l'internationaliser vous même, soit choisir un autre thème.

Un fois que vous avez en main le fichier .po ou .pot désiré, vous pouvez localiser votre thème avec POEditor.

  • Créez un projet dans POEditor.
  • Choisissez la langue French (CA) puis cliquez sur Add.

    POEditor

  • Ciquez ensuite sur Import.
  • Retrouvez le fichier .po ou .pot à éditer.
  • Cochez Also import translations in French (CA).

    POEditor

  • Cliquez sur Import File et toutes ses chaînes seront importées, avec leur traduction si elle était déjà faite.

    Poeditor

  • Il est possible d'obtenir une traduction automatique à l'aide de l'icône Automatic Translation. Notez que la version gratuite de POEditor vous offre un nombre limité de traductions automatiques. Ce nombre est cependant suffisant pour traduire un thème.
  • Quand vous avez terminé votre travail, vous devez générer le fichier compilé que WordPress saura lire. Cliquez sur Export et choisissez .mo puis cliquez sur Show Advanced Options.
  • Nommez le fichier au format mon-domaine-de-localisation-fr_CA.mo

    POEditor

  • Refaites une exportation en choisssant cette fois .po. Ceci vous permettra de retravailler ce fichier au besoin avec n'importe quel outil.
  • Placez le fichier .po et le fichier .mo dans le dossier wp-content/languages/themes

Pour plus d'information

« I18n for WordPress Developers ». Codex WordPress. http://codex.wordpress.org/I18n_for_WordPress_Developers

« Introduction to gettext ». GNU Operating System. https://www.gnu.org/software/gettext/

« Localizing themes and plugins with the WordPress translation module ». POEditor. https://poeditor.com/help/how_to_localize_with_the_poeditor_wordpress_module

▼Publicité

Veuillez noter que le contenu de cette fiche vous est partagé à titre gracieux, au meilleur de mes connaissances et sans aucune garantie.
Merci de partager !

Site fièrement hébergé chez A2 Hosting.

Soumettre