Créer un site multilingue WordPress avec WPML ou Polylang
En Afrique de l’Ouest, le multilinguisme est une réalité quotidienne. Un site bilingue français/anglais ou français/wolof peut élargir considérablement votre audience. Au Sénégal, le français est la langue officielle mais le wolof est parlé par 80% de la population. Un site e-commerce ciblant aussi la Gambie, le Ghana ou le Nigeria doit proposer une version anglaise. Ce guide compare les deux solutions majeures et vous montre comment les mettre en place.
1. WPML vs Polylang : comparatif détaillé
| Critère | Polylang | WPML |
|---|---|---|
| Prix | Gratuit (Pro 99€/an) | 39-159$/an |
| Facilité | Simple, interface claire | Plus complexe mais plus puissant |
| WooCommerce | Extension Pro payante | Inclus dans la licence CMS ($79/an) |
| Traduction automatique | Non natif | Oui (DeepL, Google Translate intégrés) |
| SEO | Compatible Rank Math/Yoast | Compatible Rank Math/Yoast + hreflang auto |
| Performance | Léger, peu d’impact | Plus lourd, ajout de requêtes BDD |
| Support | Forum communautaire | Support premium par ticket |
| Nombre de langues | Illimité | Illimité |
Recommandation :
- Polylang si vous avez un budget limité, un site simple (blog, vitrine) et 2-3 langues
- WPML si vous avez un site e-commerce WooCommerce ou si vous avez besoin de traduction automatique
2. Configuration avec Polylang (gratuit)
Installation
- Installez Polylang depuis Extensions → Ajouter
- Activez le plugin et suivez l’assistant
- Ajoutez vos langues dans Langues → Langues :
- Français (fr_FR) — langue par défaut
- English (en_US)
- Wolof (wo) — si pertinent pour votre audience
Structure des URLs
Dans Langues → Réglages → URL de la langue, choisissez la structure :
| Option | Exemple | Recommandation |
|---|---|---|
| Répertoire | votresite.com/en/about | Recommandé — meilleur SEO, simple à configurer |
| Sous-domaine | en.votresite.com/about | Nécessite config DNS, SEO acceptable |
| Domaine différent | votresite.co.uk/about | Pour les marchés séparés (FR/UK) |
| Paramètre | votresite.com?lang=en | À éviter — mauvais pour le SEO |
Traduire un article
- Ouvrez un article existant en français
- Dans la metabox « Langues » (à droite), vous verrez un « + » à côté de chaque langue
- Cliquez le « + » à côté de « English »
- WordPress crée un nouvel article lié — écrivez la traduction
- Publiez la version anglaise
Traduire les éléments du site
// Polylang traduit automatiquement :
// ✓ Articles et pages
// ✓ Catégories et tags
// ✓ Menus
// ✓ Widgets (avec Polylang Pro)
// ✓ Chaînes de thème (via Langues → Traductions de chaînes)
// Pour les chaînes personnalisées dans votre code :
// Utilisez pll_e() au lieu de _e() ou echo :
pll_e('Contactez-nous');
// Ou enregistrez la chaîne pour traduction :
pll_register_string('mon-thème', 'Contactez-nous', 'Mon thème');
// Puis traduisez dans Langues → Traductions de chaînes
Sélecteur de langue
Ajoutez un sélecteur de langue dans votre menu ou votre header :
// Dans header.php ou via un widget :
// Option 1 : Widget natif Polylang
// Allez dans Apparence → Widgets → Ajoutez "Sélecteur de langue"
// Option 2 : Sélecteur personnalisé
<?php if (function_exists('pll_the_languages')) : ?>
<ul class="lang-switcher">
<?php pll_the_languages([
'show_flags' => 1,
'show_names' => 1,
'hide_current' => 0,
]); ?>
</ul>
<?php endif; ?>
/* CSS du sélecteur de langue */
.lang-switcher {
display: flex;
gap: 10px;
list-style: none;
padding: 0;
margin: 0;
}
.lang-switcher li a {
display: flex;
align-items: center;
gap: 6px;
padding: 5px 12px;
border-radius: 5px;
text-decoration: none;
font-size: 13px;
font-weight: 600;
color: #666;
transition: background 0.3s;
}
.lang-switcher li a:hover,
.lang-switcher li.current-lang a {
background: #f0f0f0;
color: #1a1a2e;
}
.lang-switcher li a img {
width: 20px;
height: 14px;
border-radius: 2px;
}
3. Configuration avec WPML
Installation
- Achetez WPML sur wpml.org (licence Multilingual CMS pour WooCommerce)
- Téléchargez et installez les plugins : WPML Multilingual CMS + WPML String Translation + WPML Translation Management
- Suivez l’assistant de configuration :
- Langue par défaut : Français
- Langues de traduction : English, Wolof, etc.
- Format d’URL : Répertoires (votresite.com/en/)
Traduction automatique avec WPML
WPML intègre des moteurs de traduction automatique :
- Allez dans WPML → Gestion des traductions
- Activez la traduction automatique
- Choisissez le moteur : DeepL (meilleure qualité) ou Google Translate
- WPML traduit automatiquement vos articles puis vous permet de réviser
Coût : WPML offre des crédits gratuits de traduction. Au-delà, comptez environ 10-20$ pour 100 000 mots (DeepL via WPML).
Workflow de traduction recommandé
- Traduction automatique pour un premier jet rapide
- Révision humaine pour corriger les nuances et le contexte local
- Publication après validation
4. SEO multilingue
Balises hreflang (automatiques)
Les deux plugins ajoutent automatiquement les balises hreflang dans le <head> :
<!-- Généré automatiquement par Polylang ou WPML -->
<link rel="alternate" hreflang="fr" href="https://votresite.com/article/" />
<link rel="alternate" hreflang="en" href="https://votresite.com/en/article/" />
<link rel="alternate" hreflang="x-default" href="https://votresite.com/article/" />
Ces balises indiquent à Google quelle version afficher selon la langue du visiteur.
Rank Math SEO multilingue
Rank Math est compatible avec Polylang et WPML. Pour chaque traduction :
- Personnalisez le titre SEO dans la langue ciblé (ne le laissez pas en français)
- Écrivez une meta description dans la langue ciblé
- Adaptez le slug : /services → /en/services (pas /en/les-services)
- Le sitemap XML inclut automatiquement toutes les versions linguistiques
Soumettre à Google Search Console
Ajoutez votre site dans Google Search Console avec les deux variantes :
https://votresite.com(français, par défaut)- Soumettez le sitemap :
https://votresite.com/sitemap_index.xml - Google détecte automatiquement les balises hreflang pour les versions traduites
5. WooCommerce multilingue
Avec WPML + WooCommerce Multilingual
- Installez WooCommerce Multilingual (inclus dans WPML CMS)
- Configuration dans WooCommerce → WooCommerce Multilingual :
- Devises multiples : FCFA (XOF) par défaut + EUR/USD pour l’international
- Produits : traduisez les titres, descriptions et attributs
- Pages WooCommerce : panier, checkout, mon compte traduits automatiquement
- Emails : les emails de commande sont envoyés dans la langue du client
Avec Polylang + Polylang for WooCommerce (Pro)
// Polylang Pro gère automatiquement :
// ✓ Traduction des produits
// ✓ Synchronisation du panier entre les langues
// ✓ Pages WooCommerce traduites
// ✓ Emails dans la langue du client
// Pour afficher le prix dans la devise locale :
// Utilisez le plugin "WooCommerce Currency Switcher" en complément
6. Traduire le thème et les plugins
Traduction des chaînes du thème
Les textes codés en dur dans le thème (boutons, menus, messages) doivent être traduits :
Avec Polylang : Langues → Traductions de chaînes — recherchez et traduisez chaque chaîne.
Avec WPML : WPML → Traduction de chaînes — interface similaire.
Traduire les widgets et menus
Polylang : créez un menu séparé pour chaque langue et assignez-les dans Apparence → Menus.
// Afficher un widget uniquement dans une langue spécifique
// Polylang ajoute un sélecteur de langue dans chaque widget
// Sinon, utilisez ce code :
add_filter('widget_display_callback', function($instance, $widget, $args) {
if (function_exists('pll_current_language')) {
// Masquer ce widget en anglais
if (pll_current_language() === 'en' && $widget->id === 'text-3') {
return false;
}
}
return $instance;
}, 10, 3);
7. Bonnes pratiques multilingues
Ce qu’il faut faire
- Traduisez tout : ne laissez pas de pages à moitié en français et à moitié en anglais — c’est pire que pas de traduction du tout
- Adaptez, ne traduisez pas mot à mot : les prix, exemples et références culturelles doivent être localisés. Un article sur le paiement mobile en version anglaise devrait parler de M-Pesa (Kenya/Ghana) plutôt que de Wave/Orange Money
- Slug traduit :
/nos-servicesdoit devenir/en/our-services, pas/en/nos-services - 301 redirect : si vous ajoutez une langue après la mise en ligne, redirigez les anciennes URLs vers les nouvelles
Ce qu’il faut éviter
- Google Translate automatique sans révision : la qualité est insuffisante pour un site professionnel. Utilisez-le comme base puis révisez manuellement
- Drapeaux seuls comme sélecteur : les drapeaux représentent des pays, pas des langues. Le drapeau britannique pour l’anglais exclut les USA, l’Australie, le Nigeria, le Ghana, etc. Utilisez les noms de langues + drapeaux ou les noms seuls
- Mélanger les langues sur une page : Google pénalise les pages en « mixed content » linguistique
- Traduire les URLs avec des caractères spéciaux : gardez les slugs en ASCII simple (pas d’accents)
8. Cas pratique : site sénégalais bilingue FR/EN
| Page | URL Français | URL Anglais |
|---|---|---|
| Accueil | votresite.com | votresite.com/en/ |
| Services | votresite.com/nos-services | votresite.com/en/our-services |
| À propos | votresite.com/a-propos | votresite.com/en/about-us |
| Contact | votresite.com/contact | votresite.com/en/contact |
| Blog | votresite.com/blog | votresite.com/en/blog |
Redirection automatique : configurez Polylang/WPML pour détecter la langue du navigateur et rediriger automatiquement. Un visiteur anglophone arrivant sur votresite.com sera redirigé vers votresite.com/en/.
Un site multilingue bien exécuté peut doubler ou tripler votre audience en touchant les marchés anglophones d’Afrique de l’Ouest (Ghana, Nigeria, Gambie) et les expatriés. Commencez par 2 langues et ajoutez-en d’autres quand vous avez les ressources pour maintenir la qualité des traductions.