Un site multilingue avec WordPress [1/2] : traduire le thème

Un site multilingue avec WordPress [1/2] : traduire le thème

Durant les deux dernières formations WordPress que j’ai données à Marseille, la même question s’est posée: comment avoir un site multilingue avec WordPress ?

J’ai donc décidé de faire quelques recherches sur ce sujet et de vous en présenter mes conclusions et mes conseils.

Bien comprendre le problème

Tout d’abord, quand on parle de site multilingue, il faut distinguer les différents types de contenu:

  • le contenu qui appartient au thème
  • le contenu entré par le back-office (article, page, menus)

Ces deux types de contenus ont chacun une façon différente d’être traduit.

Commençons par le plus facile: traduire le thème!

Traduire un thème WordPress

WordPress intègre une fonction de traduction, le problème est qu’elle n’est pas toujours utilisée dans les thèmes. Si vous avez un thème premium, il y a tout de même de grandes chances qu’elle soit présente.

Pour le vérifier tout de suite, regardez dans votre thème: si un dossier « lang » ou « language » s’y trouve, cliquez dessus. Vous voyez les fichiers « en_US.po » et « en_US.mo » ? Ce sont les fichiers contenant tout le texte original!

Bravo, votre thème intègre bien cette fonctionnalité!

Pourquoi deux fichiers par langue ?

Le fichier « .po » est celui que vous pouvez éditer pour changer la traduction. Par contre, WordPress n’est capable que de lire le fichier « .mo », généré à partir du premier.

On a bien compris la théorie, on passe à la pratique!

Pour traduire votre thème, il vous suffit de dupliquer le fichier « en_US.po » ou « en_GB.po » et le renommer d’après votre langue: « fr_FR » pour le français, « it_IT » pour l’italien, « fr_CA » pour le canadien… Ouvrez-le et inscrivez-y toutes vos traductions. C’est aussi simple que ça!

En pratique, pour ouvrir et modifier votre fichier, il faudra passer par le logiciel POedit, qui est le seul habilité à générer le fameux fichier « .mo » utilisé au final par WordPress. On se rassure : POedit est gratuit et très simple d’utilisation!

Ouvrez le fichier, et les traductions apparaîtront sous forme d’un tableau (à gauche l’original en anglais, à droite la traduction en français). Quand vous sauvegarderez le fichier, il génèrera automatiquement le fichier pour WordPress.

Uploadez alors les deux fichiers sur votre serveur et constatez la magie s’opérer!

Autre cas de figure: vous avez un fichier « .pot »

Pas de panique! Il va simplement falloir créer un fichier « .po » à partir du « .pot ». Pour cela, lancez POedit et utilisez la fonction « Fichier > Nouveau catalogue depuis un fichier POT ».

Quand la fenêtre suivante s’ouvre, n’oubliez pas de remplir la denière ligne avec ce code: nplural=2; plural=(n>1);
créer un fichier .po pour traduire son thème

Suivez les instructions et vous aurez votre fichier « .po » prêt à l’emploi! Ouvrez-le avec POedit et modifiez-le à votre convenance.

Et si vous n’aviez aucun fichier de langue dans votre thème ?

Pas de chance pour vous, il va falloir mettre les mains dans le code! Ce n’est pas si compliqué, mais autant vous dire que vous allez avoir besoin d’être à l’aise dans la lecture du code PHP.

Pour résumer la manipulation dans les grandes lignes, il va vous falloir :

  • ouvrir chaque fichier de votre thème
  • rechercher les textes en anglais qui s’affichent à l’écran (d’où le besoin de savoir lire le code, tout le texte écrit dans les fichiers ne s’affiche pas)
  • remplacez ces textes par la fonction de traduction de WordPress « __() » et lui passer en paramètre le texte original.

Par exemple, la ligne suivante (qui affiche les mots-clefs de l’article, précédés du titre « Mots-clefs: »):

<!--?php the_tags('Mots-clefs: ', ', '); ?-->

Doit être remplacée par:

<!--?php the_tags(__('Mots-clefs:', 'vertulab'), ', '); ?-->
  • Puis créer dans le dossier de votre thème, le fichier « fr_FR.po »
  • L’ouvrir avec un logiciel de texte (ex: notepad) et y noter les lignes de traduction suivante:
msgid "Edit"
msgstr "Editer"
  • Sauvegardez ce fichier
  • Le ré-ouvrir avec POedit et le sauvegarder à nouveau pour effectuer la génération du fichier « .mo »

Comme vous le voyez, cette procédure est plus longue et demande plus de connaissances que la première!

Besoin de plus d’explication ? Retrouvez le tutoriel complet et détaillé sur le site d’Alex!

Mes conseils

Si vous n’avez pas encore choisi votre thème, mon meilleur conseil est de choisir un thème traduisible (cherchez « localization » dans la liste des « features » exposées sur le site qui présente le thème). Vous gagnerez un temps précieux!

Par contre, si vous êtes dans la situation où votre site est déjà en place et votre thème non traduisible, il va falloir mettre les mains dans le code, ou trouver un prestataire pour le faire pour vous (j’ai peur que cette solution ne soit plus coûteuse que d’acheter un nouveau thème, étant donné les prix ras-le-plancher des thèmes premium).

Dernier espoir, vous pouvez chercher une traduction française de votre thème sur le web. Je suis notamment tombé sur ce site  et celui-ci  (mais ne les ai jamais testés, à vous de vous faire une idée, restez prudents!).

La suite des opérations…

Dans le prochain article à paraître, je vous montrerai comment traduire le restant de votre site et quelles solutions privilégier :

  • Faut-il avoir un site ou plusieurs ?
  • Comment utiliser une url par langue ?
  • Les meilleurs plugins WordPress pour traduire son contenu
  • Le problème des commentaires

A très bientôt!

intermédiaire, PHP, site wordpress multilingue, traduction de thème wordpress, traduire mon thème wordpress, tutoriel

A propos de MarieEve Louvel

Depuis 3 ans, je partage mes connaissances sur ce blog, pour les entrepreneurs désireux de créer leur site vitrine et/ou leur blog professionnel avec WordPress. Mon expérience professionnelle va de l'accompagnement à la formation, en passant par de la création de site ou de logiciel. Retrouvez mes cours en ligne sur mon site FeelWeb Formation [http://feelwebformation.com]

25 commentaires

  1. Bonjour Marie-Eve,
    Merci pour ces précisions.
    J’attends avec impatience ton second article à ce sujet.
    J’aimerai bien pouvoir offrir la possibilité de lire mes articles en plusieurs langues.
    @bientôt
    Sinje

    Répondre
  2. Merci,
    cette information m’est précieuse.
    La traduction n’est pas évidente lorsqu’on n’y connait rien.

    Mais le fichier .po est lourd, c’est bien lorsqu’on peut le récupérer directement traduit, quitte ensuite à apporter les quelques modifs qui nous plaisent bien.

    Répondre
  3. J’ai hate de voir les plugins pour traduire le contenu !

    Répondre
  4. Bonjour, aucun soucis du côté de nos traductions à signaler pour le moment, et si soucis il devait y avoir il serait vite corrigé. 😉

    Répondre
  5. Salut Marie-Eve.

    Ton article tombe à pic car j’ai un problème de traduction…

    En fait, il y a quelques temps, j’avais traduit un thème anglais à l’aide de POedit, mais depuis, ce thème a été mis à jour et le fichier en_US.po a été un peu modifié (des lignes ont été ajoutées). Du coup, mon fichier fr_fr.po qui me sert pour la traduction en français n’a pas ces nouvelles lignes.

    Sais-tu par hasard s’il est possible de les ajouter manuellement dans mon fichier fr_FR.po ou bien s’il est possible de fusionner deux fichiers po, ce qui m’éviterait de devoir refaire l’intégralité de la traduction du thème… Ce qui ne m’enchante guère!

    Si tu as une idée, je suis preneur :)

    à+

    Répondre
    • Bonsoir Maël,
      Oui c’est possible de les rajouter dans ton fichier. Il suffit d’ouvrir ton fichier .po avec poedit, ya vraiment rien de sorcier. 😉
      A+

      Répondre
  6. Bonjour Marie Eve, Absolument passionnant votre blog! merci pour ces explications, elles m’ont bien aidé! C’est exactement ce que j’ai cherché, j’ attend avec impatience la 2éme partie, Cela paraît intéressant.

    Répondre
  7. En parlant de thème et de traducion, j’ai une petite question pour toi MarieEve, que me conseillerais-tu comme thème vu ce que je fais sur mon blog, car je suis décidé à changé pour un bon thème payant, mais je ne sais pas lequel prendre !

    Et si possible un thème qui se traduit en anglais du coup 😉

    Répondre
    • Salut Benjamin,

      Un thème pour ta thématique, il y a le choix! A toi de voir si tu le veux responsive, quelle mise en page, quelle page d’accueil, avec telle fonctionnalité, ou une autre…

      Va sur Elegant Thèmes, sur Woothème ou sur ThèmeForest et fais ton shopping :)

      Répondre
      • Pas de préférence pour les shops, ça dépend du thème que je trouve. J’avoue que j’aimerais bien en trouver un à mon goût sur Elegant Thème car leur offre est très alléchante (89€ pour TOUS les thèmes avec les PSD ou 39€ sans les PSD). Mais pour l’instant, je suis en train de faire un site, et j’ai choisi de reprendre un thème que j’avais déjà (Modernize) et le changer pour en faire ce que je veux 😉

  8. Je pouvais toujours insister pour lire avec WP mon fichier .po, vite la deuxiéme partie de l’article, en tout cas chapeau bas pour ce tuto clair et efficace

    Répondre
  9. Merci pour toutes ces précisions, même si pour mon cas cela n’est pas un besoin immédiat, mais qui sait un jour

    Répondre
  10. Bon, la traduction, je sais faire … Quoique, j’ai appris comment traduite un thème qui n’est pas prévu pour cela. J’espère ne jamais avoir à m’en servir mais sait-on jamais …

    Maintenant, j’attends la partie 2, pour faire un site multilingue :-)

    Répondre
  11. Super clair merci, pour mon blog j’avais placé simplement un lien vers Google traduction ce qui n’est pas je le concède la façon la plus jolie de faire surtout que les traductions Google humhum, mais bon ça peut dépanner en attendant de se lancer dans l’opération que tu décris.

    Répondre
  12. « Pour traduire votre thème, il vous suffit de dupliquer le fichier « en_US.po » ou « en_GB.po » et le renommer d’après votre langue: « fr_FR » pour le français, « it_IT » pour l’italien, « fr_CA » pour le canadien… Ouvrez-le et inscrivez-y toutes vos traductions. C’est aussi simple que ça! »

    fr_CA…

    Mince !

    WordPress va profond en service sur mesure à la clientèle.

    On l’applaudit !

    Répondre
  13. Il reste tout de même le problèmes des langues comme le Russe et tout avec leurs caractères spéciaux. Et les langues comme l’Arabe s’écrivant de droite à gauche, ça les gère aussi ?

    Répondre
    • Bonjour,

      Oui le russe et autres langues asiatiques sont prisés en compte. Pour l’écriture de droite à gauche, c’est possible aussi mais ça n’a rien a voir avec l’utf-8 ou autre encodage.

      Si mes souvenirs sont bons, ça se fait en CSS.

      J’ai vu votre mail, je vais y répondre la semaine prochaine.

      Cordialement

      Répondre
  14. Si je télécharge la version de WP en français en premier j’aurais les fichiers PO associé à cette langue et si par la suite je m’installe en local la version anglaise, j’ai juste à copier les fichiers PO qui sont dans le dossier langue et les apporter dans mon site Fr? Et pour la traduction des articles j’ai souvent entendu parler de WPML celui-ci est payant.

    Répondre
    • Bonjour Mélanie,
      Oui un simple transfert de fichier devrait faire l’affaire, mais il y a peut-être un changement à opérer du côté de wp-config.php pour changer la langue par défaut. A vérifier!
      oui WPML est payant (entre 30 et 80$).

      Répondre
  15. Bonjour MarieEve,

    j’ai un blog basic wordpress.com que je souhaite mettre en deux langues car nous avons de plus en plus de clients anglophones. J’ai comme l’impression que cette fonctionnalité n’existe pas sur ces blogs là.
    J’aimerai créer le même blog en anglais avec juste un /en à la fin, mais je n’ai pas l’impression que c’est également possible. Bref, quelles solutions solutions simples s’offrent à moi.

    Merci et excellente semaine à vous

    Répondre
    • Bonjour Yann,

      vous pouvez installer un autre site en anglais sur une autre url ex: jaimeleschats.wordpress.com et ilovecats.wordpress.com.
      Ensuite placez un lien « francais » dans le header du site anglais et vice-versa.

      Je n’en vois pas d’autres, bon week-end à vous (et désolée du retard dans ma réponse!)

      Répondre
  16. Le plus important, à mon avis, pour un site mutlilingue, c’est d’avoir un bon maillage entre les différentes langues et de ne pas devoir retourner à la page d’accueil pour changer de langue.

    Karyn

    Répondre

Trackbacks/Pingbacks

  1. Un site multilingue avec Wordpress [1/2] - Les Doigts dans le Net | Vous saurez tous sur wordpress ou presque... | Scoop.it - [...] Toute la procédure de traduction d'un thème wordpress, première étape vers un site multilingue  [...]
  2. Un site multilingue avec WordPress [1/2] – Les Doigts dans le Net | Astuces Marketing - [...] See on lesdoigtsdanslenet.com [...]
  3. miscélanées | Pearltrees - [...] Un site multilingue avec Wordpress [1/2] [...]
  4. Intello Consulting » Traduire un thème WordPress - […] Que faire si vous n’avez qu’un fichier portant l’extension « .pot » ? […]
  5. Comment créer un site bilingue ou multilingue dans WordPress | Diane Bourque - Spécialiste Web - […] Un site multilingue avec WordPress [1/2] – Les Doigts dans le Net http://lesdoigtsdanslenet.com/un-site-multilingue-avec-wordpress-1sur2/ […]
  6. Comment gérer vos liens cassés avec l’extension Broken Link Checker | Diane Bourque - Spécialiste Web - […] Un site multilingue avec WordPress [1/2] – Les Doigts dans le Net http://lesdoigtsdanslenet.com/un-site-multilingue-avec-wordpress-1sur2/ […]

Soumettre un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

This Blog will give regular Commentators DoFollow Status. Implemented from IT Blögg

EmailEmail
PrintPrint