Chaque thème et plug-in WordPress peut devenir compatible avec WPML. Suivez ce didacticiel pour apprendre à tester la compatibilité avec WPML et procéder, le cas échéant, aux changements nécessaires afin que votre code soit entièrement prêt à devenir multilingue.

Ce tutoriel explique comment vous pouvez préparer différentes sections de votre thème afin qu’elles deviennent multilingues. Le processus prend environ 1 à 2 heures. Vous pourrez ensuite l’appliquer à votre thème.

Lorsque vous avez terminé, il est conseillé de créer un fichier XML de configuration de la langue et de l’ajouter dans le répertoire racine de votre thème. Cela permettra aux gens d’opérer des sites multilingues avec votre thème, sans qu’eux-mêmes n’aient à configurer quoi que ce soit.

Contenu

  1. Installation des composants de WPML
  2. Étude de cas : thème Resort de WooThemes
  3. Traduction de l’en-tête
  4. Traduction des menus
  5. Traduction du diaporama WooThemes
  6. Traduction des éléments personnalisés du plug-in ou du thème
  7. Traduction du corps du texte
  8. Traduction des widgets
  9. Traduction du pied de page
  10. Création d’un fichier de configuration de la langue pour votre thème
  11. Assistance GetText pour les chaînes codées en dur
  12. Conseils et idées de débogage

1. Installation des composants de WPML

WPML comprend plusieurs composants. Certains sont nécessaires au bon fonctionnement de la compatibilité avec votre thème et d’autres – destinés aux administrateurs du site – serviront plus tard à gérer le contenu de votre site.

Vous devez activer les composants essentiels de WPML, qui vous permettront de traduire entièrement votre thème, comme les éléments principaux de WPML, le module de traduction de chaînes String translation de WPML et celui de gestion de la traduction, Translation Management de WPML.

Éléments requis de WPML
Éléments requis de WPML

Pour les obtenir, rendez-vous dans votre compte WPML puis cliquez sur Téléchargements.

Nous vous invitons, bien entendu, à découvrir les autres composants dans la rubrique éléments principaux et additionnels de WPML.

2. Étude de cas : thème Resort de Woo Themes

Regardons de plus près un site Web réalisé grâce au thème Resort de WooThemes :

exemple-page-accueil

Au fur et à mesure que nous découvrons les différents éléments de ce site, nous apprendrons comment traduire les thèmes ou plug-ins avec WPML !

3. Traduction de l’en-tête

L’en-tête du plug-in ou du thème se situe dans les paramètres généraux de WordPress :

paramètres-généraux
Paramètres -> Généraux

Comme il ne fait partie d’aucune publication, nous devons utiliser le module de traduction de chaînes String Translation de WPML pour le traduire. Rendez-vous dans WPML-> String Translation, recherchez la chaîne par son contenu (le titre du site) et procédez à la traduction.

exemple-traduction-chaîne
WPML->String Translation

Vous n’avez rien besoin de faire au thème ni au plug-in pour rendre cela possible. WPML le gère automatiquement. Nous vous avons montré comment traduire le nom du site, parce que nous allons utiliser String Translation de WPML pour bien d’autres choses dans votre thème ou plug-in.

4. Traduction des menus

WPML traduit les menus de WordPress sans que vous n’ayez rien à faire. Tant que votre thème utilise le système de menu standard de WordPress, WPML traduira les menus.

Commandes de traduction du menu
Commandes de traduction de menu

Lorsque vous vous rendez dans Apparence-> Menus, vous verrez les commandes de traduction de menu de WPML. Découvrez-en plus sur la traduction de menu pour voir comment cela fonctionne.

5. Traduction du diaporama de WooThemes (au moyen des types de publication personnalisés)

Le thème que nous étudions en exemple utilise un TPP, appelé « diapo » pour le diaporama. Cela signifie qu’il est facile de traduire avec WPML, en procédant à un minimum de configuration.

Nous devons indiquer à WPML que le type de publication personnalisé « diapo » est multilingue. Cela signifie que WPML propose aux utilisateurs de le traduire.

Vous vous demandez peut-être pourquoi WPML autorise certains contenus multilingues et d’autres sans information relative à la langue, sur le même site. Bonne question !

Lorsque le contenu est multilingue, WPML le filtre et ne renverra que les résultats dans la langue actuelle. Dans certains cas, vous souhaitez utiliser exactement le même contenu pour toutes les langues. Par exemple, si vous voulez afficher exactement les mêmes diapositives (avec les mêmes titres) pour toutes les langues, les TPP de la diapositive ne devront pas pouvoir être traduits. Nous voulons traduire les diapositives, afin qu’elles puissent avoir différents titres pour chaque langue.

Dans l’interface utilisateur de WPML, modifiez une diapo et faites défiler entièrement vers le bas. Vous verrez une commande « Configuration du contenu multilingue« .

Configuration du contenu multilingue
Configuration du contenu multilingue

Cochez la case pour rendre le TPP traduisible puis cliquez sur Appliquer.

Regardez la capture d’écran. Vous voyez comment la case est grisée ? Ceci n’est pas une erreur de notre part. C’est parce que nous avons fourni un fichier de configuration de la langue avec le thème ou le plug-in.

Le fichier de configuration de la langue indiquera à WPML tout ce qu’il a besoin de savoir sur votre thème. Cela comprend quels TPP et taxonomie doivent être traduits, quels champs personnalisés sont à traduire ou synchroniser, et quelles sont les chaînes à traduire.

6. Traduction des éléments personnalisés du plug-in ou du thème

De nombreux thèmes et plug-ins possèdent des caractéristiques uniques, qui stockent les textes dans la table wp_options. Le message d’introduction de Resort fait exactement cela.

Message d'introduction dans Resort
Message d’introduction dans Resort

Le thème ou le plug-in enregistre ces textes dans la table wp_options et nous devons indiquer à WPML qu’il est nécessaire de les traduire. Nous ajoutons cette information au fichier de configuration de la langue. Là, nous indiquons à WPML quelles entrées de la table wp_options doivent être traduites.

Cette technique est adaptée quand les clés dans lesquelles se trouvent les options sont fixes (comme dans la plupart des thèmes). Si votre thème utilise des tableaux d’entrées pouvant se développer au fur et à mesure des saisies de l’utilisateur, vous devez enregistrer ces entrées dynamiquement. Utilisez les fonctions icl_register_string et icl_t pour le faire.

7. Traduction du corps du texte

WPML permet aux utilisateurs de traduire des contenus en toute simplicité. Les écrans de post-édition comprennent les commandes de traduction de WPML, ce qui permet de créer de nouvelles traductions et de modifier celles qui existent déjà.

Ajout de traductions
Ajout de traductions

Vous n’avez rien besoin de faire au thème ni au plug-in pour rendre cela possible. Traduire le contenu est une des caractéristiques principales de WPML.

En revanche, vous devez faire vérifier que tout texte ajouté par votre thème est traduisible. Par exemple, les textes mis en surbrillance dans cette capture d’écran doivent être enveloppés dans des appels GetText.

Textes du thème
Textes du thème

Si vous utilisez GetText pour la première fois, consultez notre FAQ sur la traduction des textes du thème pour en savoir davantage.

8. Traduction des widgets

WPML permet aux utilisateurs de traduire le contenu des widgets de texte. Il traduit également les titres de tous les autres widgets. Si votre thème ou plug-in crée ses propres widgets personnalisés, assurez-vous de passer leurs titres à travers les filtres de WordPress standard. De cette façon, WPML permettra aux utilisateurs de traduire les titres de vos widgets via l’écran de traduction de chaîne de String Translation.

9. Traduction du pied de page

Ce thème a un écran d’administration personnalisé pour stocker les textes de pied de page.

Textes de pied de page
Textes de pied de page

Comme pour les autres textes que nous avons vu, le thème ou le plug-in a également enregistré les textes de pied de page dans la table wp_options. Nous allons ajouter ces entrées dans le fichier de configuration de la langue, indiquant ainsi à WPML qu’il est nécessaire de les traduire.

10. Création d’un fichier de configuration de la langue pour votre thème

Lorsque vous avez terminé et que votre thème est désormais entièrement compatible avec WPML, vous voudrez probablement faire en sorte qu’il soit aussi facile aux autres d’opérer des sites multilingues avec ce thème.

Créez un fichier de configuration de la langue pour votre thème et enregistrez-le dans le répertoire racine du thème. Le fichier indique à WPML quels types de publication personnalisés, quelle taxonomie, quels champs et quelles options sont traduisibles.

Ce petit fichier XML fera gagner un temps considérable à vos clients, leur permettant d’exécuter des sites multilingues sans effort. Tout fonctionnera pour vos clients, sans qu’ils n’aient besoin de configurer ce qu’il convient de traduire. Vous passerez également moins de temps à leur prêter assistance.

11. Assistance GetText pour les chaînes codées en dur

Bien que cela ne soit pas strictement lié à WPML, vous devriez veiller à envelopper toutes les chaînes de votre thème dans des appels GetText. Cela signifie que les textes codés en dur apparaîtront dans la langue adéquate sur le site. Vous devriez le faire aussi bien pour les textes dans l’admin du thème que pour les textes qui s’affichent sur les pages frontales.

Tous les thèmes et plug-ins WordPress, qu’ils soient prêts pour usage multilingue ou non, devraient utiliser GetText pour la traduction des chaînes codées en dur. Les thèmes de WordPress par défaut utilisent GetText de manière très précise et sont une excellente référence, si vous vous lancez.

Envelopper des textes dans des appels GetText n’est pas une mince affaire. Si vous n’êtes pas familier avec la procédure, ou avez besoin d’aide pour déboguer la localisation de votre code, jetez un coup d’œil à ceci :

Vous devez savoir que WPML s’intègre parfaitement avec GetText. Une fois que vous avez enveloppé les chaînes codées en dur dans les appels GetText, vous serez en mesure de les traduire directement depuis l’admin de WordPress en utilisant l’écran de traduction de chaîne de String Translation de WPML. WPML peut également exporter et importer pour vous des fichiers .po, vous permettant de traduire les chaînes de votre thème, le tout depuis WordPress.

12. Conseils et idées de débogage

Si vous êtes déjà familier avec les bases de WPML et travaillez sur la compatibilité avec votre thème ou plug-in, consultez le guide de débogage en matière de compatibilité du thème. Vous y trouverez des conseils et des idées sur la façon de rendre votre thème facilement compatible avec WPML.

Et si vous avez besoin de notre aide, faites-nous signe. Rendez-vous sur notre forum de l’assistance technique, expliquez ce qui ne va pas et nous vous aiderons rapidement.