Créer un site multilingue #2 – Les plug-ins WordPress

Dans le premier article de cette série, j’évoquais la localisation d’un site Internet, c’est-à-dire son adaptation aux différents pays que l’on souhaite approcher. Dans ce billet, je vais aborder la réalisation technique d’un site multilingue.

Pour les sites propulsés par WordPress, il n’existe pas de solution native pour créer un site en plusieurs langues. Il existe en revanche deux grands plug-ins – ou extensions – facilitant la gestion de contenus traduits : WPML et qTranslate. Il semble que le premier ait la faveur des professionnels. En ce qui me concerne, j’ai, ou plutôt j’avais, jeté mon dévolu sur le second. Notez que mon avis est forcément subjectif et correspond à mes besoins du moment.

La différence majeure entre les deux extensions est le prix : WPML coûte 79 $ quand qTranslate est entièrement gratuit.

WPML
À vrai dire, je n’ai que très peu utilisé ce plug-in. Bien que j’aime mettre les mains dans le cambouis, je suis loin d’être un expert en développement ouèbe et le temps que j’ai à y consacrer est limité. Ma première impression sur WPML fut que celui-ci exige une charge de travail considérable. Trop, à mon goût.

En effet, WPML semble particulièrement complet et puissant. Il donne la possibilité de traduire tous les éléments du site, mais c’est aussi ce qui rend le travail si fastidieux. Avec ce module, vous devrez en effet localiser mot à mot le thème, les menus, les widgets. Sans oublier la traduction des pages et articles de blog le cas échéant.

La traduction du site s’articule donc en deux étapes. Pour le thème et l’administration du site en général, tout se passe sur un menu dédié dans les réglages de l’extension. La traduction des contenus est plus fluide, puisqu’un bouton vient se greffer à l’interface de gestion des pages et des articles. Libre à vous d’entrer la traduction.

Depuis la liste des articles, on peut choisir la langue de traduction
Depuis la liste des articles, on peut choisir la langue de traduction

C’est une extension très complète, mais qui nécessite un investissement en temps et en argent pour en tirer pleinement parti. Elle bénéficie toutefois d’une communauté active et il est facile de trouver de l’aide.

Les concepteurs de WPML sont également à la tête une agence de traduction, I Can Localize, qui propose de traduire sites et logiciels pour des tarifs « à partir de 0,09 $ du mot ». Autre service proposé : la traduction automatique de tout le site. (Je vous laisse imaginer les ravages.) Rappelons que rien ne vaut le travail d’un traducteur professionnel qualifié et sérieux.

qTranslate
C’est donc la solution que j’avais choisie lorsque j’ai décidé d’ouvrir (Not Just) Another Translator à l’anglais et l’italien. Quoique moins complet, le concurrent gratuit de WPML a toutefois de beaux atouts à faire valoir. D’une simplicité redoutable, il s’installe en un rien de temps et fonctionne de manière totalement transparente… tant qu’on n’entre pas dans les tréfonds du site.

qTranslate permet en effet de traduire facilement les pages et articles d’un site. En revanche, il est bien plus difficile, voire impossible, de localiser les extensions et les éléments du thème (détrompez-moi si ce n’est pas le cas). Ce qui risque de vous donner des sites avec de petits bouts de phrase dans différentes langues. Il faut vraiment mettre les mains dans le code des pages pour aboutir à quelque chose de complet, ce qui est vite fastidieux (voire impossible sans un minimum de connaissances).

Revenons-en à la traduction des pages. Sur la page de création des articles, qTranslate crée un onglet supplémentaire par langue et rend la navigation très facile entre les langues. De même, plusieurs champs sont désormais visibles pour le titre. Un jeu d’enfant. Les réglages de l’extension sont aussi très clairs.

Tous les éléments nécessaires à la traduction d'un article sont présentés sur une même page
Tous les éléments nécessaires à la traduction d’un article sont présentés sur une même page

La force de qTranslate est aussi son défaut, puisqu’il fonctionne avec un système de balises. Pour faire simple, il créé, sur une même page, du code HTML pour distinguer les textes des différentes langues, ce qui se présente ainsi :

<!--:fr-->Texte en français <!--:-->
 <!--:en-->English text<!--:-->
 <!--:it-->Testo in italiano<!--:-->

Ce système devient problématique lorsque vous déciderez, un jour, de ne plus passer par qTranslate. Vos articles deviendront alors illisibles et s’afficheront en un seul tenant de la manière suivante :

Texte en français English text Testo in italiano

Même problème si vous voulez exporter ces articles, utiliser des extensions non compatibles ou si le plug-in est désactivé à la suite d’une mise à jour de WordPress, ce qui est fréquent. Si le concepteur est prompt à mettre son extension à niveau, il peut s’écouler plusieurs jours durant lesquels votre site est illisible. Une éternité à l’échelle du Web.

Exemple : lors de la migration de mon site, j’ai dû effacer les balises générées par qTranslate dans TOUS les articles du blog (plus d’une centaine), car les versions anglaise et italienne étaient venues se greffer à la fin du texte français. Une sacrée perte de temps.

Conclusion
qTranslate est un module idéal pour les sites simples. Même s’il atteint vite ses limites et laisse des traces tenaces, sa facilité d’utilisation joue en sa faveur. Notons que le créateur a noué des partenariats pour proposer des services de traduction automatique ou humaine. Un forum d’aide est disponible, ce qui est toujours précieux.

Il y a une troisième solution pour gérer un site en plusieurs langues sous WordPress, et c’est celle que j’ai retenue pour le site que vous parcourez actuellement. Rendez-vous au prochain épisode pour la découvrir.

Rappel : ceci est le deuxième volet d’un triptyque consacré à la localisation d’un site web. Retrouvez le premier volet sur la localisation et le troisième sur les versions linguistiques différenciées.

Une réflexion sur « Créer un site multilingue #2 – Les plug-ins WordPress »

Laisser un commentaire

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