Wordpress multi-langue
Posté le samedi 26 novembre 2011, 00:19Wordpress est à la base conçu pour créer des blogs, mais il est tellement flexible qu'on peut parfaitement sortir de ce contexte et se servir de Wordpress comme un CMS.
Wordpress ne supporte pas le multi langage nativement, mais il existe quelques plugins qui permettent de gérer du contenu en plusieurs langues.
Avant de vous les présenter, il faut au préalable comprendre les contraintes d'un site multilingue.
SEO
L'optimisation des pages est très importante pour ne pas être pénalisé au niveau du référencement. Concrètement, ça veut dire que chaque page traduite devra comporter un titre, une description et bien sûr un contenu spécifique, il ne s'agit pas de simplement traduire le contenu de chaque post, il faut traduire toute la page (on peut même aller jusqu'à traduire les catégories et les tags).
Le second point qui est également déterminant, c'est le format des URLs que vous allez utiliser pour gérer le multilangue, et pour ça il y a plusieurs solutions. Voici les solutions les plus courantes, de la moins bonne à la ou les meilleures :
- Stocker la langue à afficher dans la session, ou avec un cookie
Cette solution est absolument catastrophique pour le référencement, puisque d'une part l'URL d'un même contenu est la même pour toutes les langues dans lesquelles ce contenu est proposé, et d'autre part car les moteurs de recherche ne supportent ni le cookie ni les sessions (le fonctionnement des sessions étant basé sur les cookies).
- Ajouter un paramètre GETdans l'URL (
QUERY_STRING
), exemple :
http://monsite.com/ma-page?lang=en
Cette solution est déjà bien meilleure, mais les moteurs de recherche ne sont pas très copain avec les paramètres d'URL, même s'ils les prennent en compte.
- Utiliser un sous répertoire virtuel injecté dans l'URL, exemple :
http://monsite.com/en/ma-page
Voilà une solution adaptée au référencement, ergonomique et simple à comprendre pour les visiteurs.
- Utiliser un sous-domaine, exemple :
http://en.monsite.com/ma-page
Le sous-domaine est aussi adapté au référencement, c'est une approche "propre". Elle est peut-être un peu plus lourde à gérer puisqu'il va vous falloir configurer un sous-domaine sur votre hébergement (VirtualHost).
Comparaison de 4 plugins Wordpress multilangue
Multisite Language Switcher
L'idée est ici d'utiliser la fonction multisite de Wordpress pour créer un site pour chaque langue. Le plugin permet de gérer la liaison entre plusieurs posts identiques mais écrits en différentes langues, et de gérer le choix de la langue en front, sur votre thème.
[lien]
Avantages | Inconvénients |
---|---|
Permet de traduire tout : contenu, titre, permalien, tags, catégories, paramètres généraux... Ne ralentis pas Worpdress (temps de génération PHP des pages). Ergonomique, facile à utiliser. On peut utiliser un sous-répertoire virtuel ou un sous-domaine, c'est donc optimisé pour le référencement. Gratuit |
Nécessite d'activer la fonction réseau de Wordpress (intégré à Wordpress depuis la version 3), ou d'utiliser WPMU, donc assez lourd à mettre en place et à gérer. |
qTranslate
L'approche de qTranslate est totalement différente, ce plugin vise la simplicité en ajoutant simplement un nouveau champ titre et un onglet par langue sur la zone d'édition de contenu, dans la partie administration.
Pour ceux qui sont intéressés par l'aspect technique, qTranslate serialize chaque champ (titre et contenu) dans la base de données, et sépare ces langues lors de l'affichage en front.
[lien]
Avantages | Inconvénients |
---|---|
Simple à utiliser, ergonomique. Ne ralentit pas Wordpress. URLs propres (au choix : paramètre dans l'url, sous-répertoire virtuel ou sous-domaine). Gratuit |
Multilangue géré uniquement pour le champ titre et contenu, impossible de traduire le permalien par exemple. Étant donné que les différentes traduction correspondent au même post dans la base de données (post_id unique), tous les commentaires de chaque langue vont s'afficher sur la même page. |
WPML (ex sitepress)
Ce plugin va gérer les différentes langues dans un post différent, et gérer le lien entre différentes traductions d'un même post. Il est très complet, c'est le plus abouti des plugins multilangue que j'ai testés. Il s'agit d'un plugin payant (la dernière version gratuite est compatible avec Wordpress 3.0.1), son prix est d'environ 50€ pour la version complète, et 20€ pour la version la moins chère, ce qui reste très raisonnable (tout travail mérite salaire).
[lien]
Avantages | Inconvénients |
---|---|
Simple à utiliser, ergonomique. Optimisé pour le SEO : sous-répertoire virtuel Permet de gérer les commentaires, tags, catégories très finement, pour chaque post de traduction. Très complet, gère les "workflow" permettant d'avoir recours aux services d'un traducteur. |
Malheureusement ce plugin souffre d'un grave défaut à mes yeux : il ralentit considérablement Wordpress, qui ne brille déjà pas par sa légèreté. En moyenne, le temps de génération augmente de 70%, on passe d'environ 300ms à plus de 500ms pour générer une page. |
Xili language
Sur le papier, ce plugin fonctionne de manière très similaire à WPML, il créé un post par langue. La comparaison s'arrête là, ce plug-in est beaucoup moins complet que WPML, même si je ne l'ai passé en revue que très rapidement.
[lien]
Avantages | Inconvénients |
---|---|
Gratuit. Je ne lui trouve pas d'avantage particulier, mais je suis peut-être passé à côté donc je vous invite à l'essayer quand même. |
Pas très pratique à utiliser (il faut entrer les id de post à la main) Pas optimisé pour le référencement : la seule méthode proposée est de filtrer les résultats avec un paramètre dans l'URL du style ?lang=en_us . |
En ce qui concerne le plugin qTranslate, doit on refaire l'optimisation "seo" de la page traduite?
Merci de votre aide.
http://www.insidedaweb.com/wordpress-seo/plugins-wordpress/wpml-site-multilingue-simple-wordpress/
Librement,
Séb