WooCommerce multilingue avec WPML, Polylang et chat IA

avril 28, 2026 Guides de plate-forme
WooCommerce multilingue avec WPML, Polylang et chat IA

Les boutiques multilingues WooCommerce obtiennent un chatbot qui fonctionne avec WPML et Polylang. Synchronisation automatique de toutes les langues, catalogue complet dans chaque langue, conversations dans la langue du client.

Si vous vendez au-delà des frontières sur WooCommerce, vous exécutez WPML ou Polylang. La couche de traduction est tellement commune que les propriétaires de boutiques cessent de la remarquer comme un plugin séparé. C'est juste comment la boutique fonctionne.

Ensuite un plugin de chat est installé et les fissures se montrent en un jour. L'acheteur sur la version française de la boutique reçoit des réponses en anglais. Ou le chat trouve un produit anglais et le recommande sur une page allemande où le même produit a une URL allemande. Ou pire, le chat dit qu'un produit existe, le lie, et le lien 404 car le chat a indexé la langue maître uniquement.

J'ai regardé cela arriver sur plusieurs boutiques. Le propriétaire de la boutique la dépose comme « comportement chat étrange » et essaie un autre plugin de chat. Le nouveau casse de la même façon. La plupart des plugins de chat n'ont pas été conçus pour la façon dont les plugins de traduction WordPress stockent les données et les échecs se ressemblent identiquement d'un fournisseur à l'autre.

Comment WPML et Polylang stockent les données

C'est le morceau que la plupart des plugins de chat ignorent. Chaque plugin de traduction utilise un modèle différent.

WPML : postes séparés liés par trid

WPML crée un nouveau WP_Post pour chaque traduction. Le produit original, sa traduction française et sa traduction allemande sont trois postes séparés avec trois ID séparés. Ils sont liés via un ID de traduction (trid) dans la table wp_icl_translations.

Si un plugin de chat interroge wp_posts pour les produits et s'arrête là, il obtient les trois postes comme des produits séparés. Le chat indexera une version française et anglaise comme s'il s'agissait de deux SKU sans rapport. Même image, langue différente, ID différent. Pure duplication de données, et le chat recommandera la version de langue qu'il classe la plus élevée dans son espace d'incorporation, qui est généralement le maître.

Polylang : même motif, différentes tables

Polylang suit le même modèle de poste séparé que WPML, mais stocke ses liens de traduction dans wp_term_taxonomy avec une taxonomie post_translations. Le mécanisme de regroupement est différent ; la conséquence pour un plugin de chat naïf est la même. Chaque version de langue est un poste distinct.

Les trois modes d'échec multilingues

1. Indexation d'une langue et traduction du reste au moment de l'exécution

Le chemin le moins cher pour un fournisseur de chat : indexer la langue maître, demander au LLM de traduire la réponse au moment de la conversation. Cela fonctionne pour les salutations et les questions de catégories. Cela échoue dès qu'un acheteur tape quelque chose de spécifique.

« Avez-vous le sac à main en cuir noir taille moyenne ? » Le chat cherche dans son index anglais « leather handbag black medium ». La traduction anglaise du catalogue pourrait dire « midsize ». La recherche de vecteurs manque. L'acheteur reçoit un message « Je ne pouvais pas trouver cela » en français. Le produit est sur la vitrine en français.

Vous ne voyez pas cela dans les tableaux de bord du chat car la conversation semble normale. Vous le voyez dans les données de conversion, où les acheteurs français ont tendance à convertir à un taux plus faible que les acheteurs anglais, et le chat y est pour quelque chose.

2. Indexation de chaque traduction comme produit séparé

Le plugin lit wp_posts et indexe tout ce qu'il trouve. Le chat finit avec trois entrées « Black Leather Handbag » (anglais, français, allemand), toutes avec des incorporations similaires. Quand un acheteur demande à ce sujet, le chat en choisit une au hasard ou par détection de langue qui ne fonctionne pas toujours.

La recommandation se lie à l'URL de la langue maître. L'acheteur sur le site français clique et atterrit sur un 404 ou sur la page anglaise au milieu de son flux d'achat français. Confiance perdue.

3. Indexation par langue mais lien incorrect sur la recommandation

Certains plugins font le travail le plus difficile : détecter la langue du visiteur à partir de la page, acheminer la requête vers l'index de langue approprié. Mais quand le chat retourne une carte de produit, il retourne l'URL de son index sans l'acheminer à nouveau via la recherche de traduction.

Le chat dit « Voici le sac » et se lie à /en/black-leather-handbag/ au lieu de /fr/sac-a-main-en-cuir-noir/. Le lien fonctionne, mais l'acheteur lit maintenant l'anglais sur un flux d'achat français. Certains partent immédiatement.

Ce que le chat conscient du multilinguisme a besoin

Pour que le chat se comporte correctement sur une boutique WPML ou Polylang, quatre choses doivent se produire :

  1. Reconnaître la langue du visiteur du contexte de la page. Le widget doit connaître la langue de la vitrine au démarrage de la conversation, pas deviner à partir du texte du message. WPML et Polylang exposent la langue active comme ICL_LANGUAGE_CODE ou pll_current_language(). Le widget devrait la passer au backend du chat à chaque session.
  2. Indexer chaque traduction comme variante de langue du même produit. Trois URL, un produit, trois ensembles de texte traduit. Le chat cherche parmi toutes les variantes mais recommande l'URL qui correspond à la langue du visiteur.
  3. Résoudre le regroupement de traduction au moment de la synchronisation. Quand le plugin émet un webhook pour une sauvegarde de produit, il devrait parcourir la taxonomie trid de WPML ou post_translations de Polylang, trouver chaque traduction liée et émettre une seule charge utile avec toutes les versions de langue.
  4. Échanger l'URL sur la recommandation. Quand le chat choisit un produit à recommander, il choisit l'URL qui correspond au code de langue du visiteur, pas l'URL du coup d'index.

Comment Emporiqa gère WPML et Polylang

Le plugin Emporiqa détecte automatiquement quel plugin de traduction est installé et interroge le bon mécanisme de regroupement. À la sauvegarde du produit, le plugin émet un seul événement webhook par produit : les champs traduisibles (names, descriptions, links, categories, attributes) sont imbriqués par canal et par langue (structure : {channel: {lang: value}}). Le chat indexe le produit une fois avec toutes ses traductions attachées.

Les traductions WPML créées depuis l'éditeur de blocs passaient auparavant en page séparée dans la mauvaise langue avant que le parent ne soit lié. Le plugin se prémunit contre cela depuis la 1.1.4 avec le hook wpml_translation_update, et un correctif parallèle pour Polylang a été ajouté en 1.1.3 : les traductions de l'éditeur de blocs atterrissent désormais chez Emporiqa comme partie intégrante du produit parent, pas comme doublon.

Le widget lit la langue de la page depuis ICL_LANGUAGE_CODE (WPML) ou pll_current_language() (Polylang) et la transmet à chaque conversation. Le chat cherche parmi toutes les variantes de langue et recommande avec l'URL correspondante.

Si vous avez localisé des champs personnalisés (chaînes ACF, étiquettes d'attributs à des endroits non standard), utilisez le filtre standard de données produit, la charge utile consolidée imbrique déjà les attributs par canal et par langue, vous réutilisez donc la même structure :

add_filter('emporiqa_product_data', function($data, $product) {
    foreach ($data['attributes'] as $channel => &$languages) {
        foreach ($languages as $lang => &$attrs) {
            $attrs['custom_label'] = pll_translate_string('Default Label', $lang);
        }
    }
    return $data;
}, 10, 2);

Ce filtre s'exécute une fois par produit à la sauvegarde, donc l'index du chat reflète la logique de traduction de votre boutique, quelle qu'elle soit.

Comment tester un plugin de chat sur votre boutique multilingue

Avant de vous engager dans un plugin de chat sur une boutique WPML ou Polylang, exécutez ce test de cinq minutes :

  1. Ouvrez la vitrine dans votre deuxième langue. Si votre boutique est anglais maître et français secondaire, naviguez vers /fr/.
  2. Posez au chat une question spécifique de produit en français. Utilisez une phrase qui correspond uniquement à la description du produit français, pas l'anglais. « Avez-vous une lampe de chevet en bois ? » fonctionne si « bedside lamp wood » est comment la version anglaise lit.
  3. Vérifiez la langue de la réponse. Le chat devrait répondre en français, pas en anglais.
  4. Cliquez sur le lien du produit recommandé. L'URL devrait être l'URL française (/fr/...), pas l'URL maître.
  5. Répétez pour toute troisième langue que la boutique supporte.

Tout échec sur ces quatre points signifie que le chat casse sur la traduction. La boutique fuira la conversion à chaque session de langue non maître, et le tableau de bord du chat ne montrera pas la perte car la conversation s'est complétée.

Ce que cela ne fait pas

  • Traduire automatiquement le contenu non traduit. Si un produit existe en anglais uniquement et qu'un acheteur français le demande, le chat ne l'inventera pas une version française. Il dira à l'acheteur que le produit n'est pas disponible en français et suggère l'alternative traduite la plus proche. Les boutiques qui veulent la traduction automatique devraient exécuter d'abord l'étape de traduction automatique de leur plugin de traduction.
  • Traduire l'interface utilisateur du widget de chat. Le widget supporte 65+ langues, mais les étiquettes sont choisies parmi un ensemble fixe. Les chaînes UI personnalisées (accueil, ouverture, messages) doivent être configurées par langue dans l'admin Emporiqa.
  • Synchroniser les différences de stock ou de tarification spécifiques à la langue. Si votre boutique définit des prix différents par langue (rare mais réel), exposez cela via le filtre WordPress ci-dessus. La synchronisation par défaut utilise un prix par produit.

Pourquoi cela importe le plus pour les boutiques qui vendent en 3+ langues

Pour une boutique monolingue, la gestion multilingue est discutable. Pour une boutique avec l'anglais plus une langue secondaire, vous pourriez tolérer le modèle de traduction à l'exécution et ne pas perdre beaucoup. Par la troisième langue, le coût de traduction à l'exécution s'accumule et les échecs d'inadéquation de recherche deviennent visibles dans les données de rebond.

Si votre boutique vend en trois langues ou plus, le plugin de chat que vous choisissez déterminera tranquillement votre taux de conversion sur vos marchés secondaires. Le test de cinq minutes ci-dessus est le moyen le moins cher de savoir ce que vous obtenez avant de signer un an de frais mensuels.

Lecture connexe : le cas multilingue entre plates-formes dans vos clients allemands partent, les échecs spécifiques à WC autour des produits variables, l'impact de la migration HPOS et la survie à la charge de pointe. Pour la présentation complète de la configuration WooCommerce, voir pourquoi la plupart des plugins de chat WooCommerce arrivent mal l'architecture.

Créez un compte Emporiqa gratuit sur /platform/create-store/ et installez le plugin sur votre boutique WPML ou Polylang. Vous recevez 25 $ de crédit d'inscription (environ 100 conversations), sans carte requise. Ou essayez d'abord la démo en direct. La démo est une boutique d'électronique fournie, et le chat se comporte de la même façon sur n'importe quel catalogue. La couverture multilingue est présentée sur Emporiqa pour WooCommerce.

Frequently asked questions

Le plugin de chat WooCommerce fonctionne-t-il avec WPML et Polylang ?

Oui. Emporiqa synchronise votre catalogue WooCommerce via le plugin officiel et lit comment WPML et Polylang relient les produits traduits, donc chaque version de langue correspond à un seul produit au lieu de SKU dupliqués. Les acheteurs sur la boutique française ou allemande obtiennent des réponses et des liens produits dans leur propre langue.

Le chatbot répond-il dans la langue de l'acheteur sur une boutique multilingue ?

Oui. Emporiqa détecte la langue de l'acheteur et répond dans plus de 65 langues, donc un visiteur sur la page allemande obtient des réponses en allemand et l'URL produit allemande, pas le maître anglais. Cela évite les liens 404 que vous obtenez quand un plugin de chat indexe seulement la langue maître.

Combien coûte un chatbot WooCommerce multilingue ?

Emporiqa est en paiement à l'usage à 0,25 $ par conversation avec 25 $ de crédit d'inscription, environ 100 conversations, et aucune carte requise pour commencer. Les plus de 65 langues, les membres d'équipe illimités et toutes les fonctionnalités sont inclus sur chaque compte, avec un plafond mensuel par défaut de 59 $ que vous pouvez ajuster.

Rosen Hristov, Founder & CEO of Emporiqa

Rosen Hristov

Founder & CEO at Emporiqa

Connect on LinkedIn

Share this article

Related Articles

Essayez-le sur votre boutique

Connectez vos produits et voyez le vendeur répondre aux questions des clientes sur votre catalogue.

Votre tableau de bord montre ce que chaque conversation a donné. Après une centaine de conversations offertes, ce sont vos chiffres qui décident.

  • 25 $ de crédit à l'inscription
  • 0,25 $ par conversation, plafonné
  • Sans carte bancaire