# Balises hreflang dupliquées dans TranslatePress : que corriger > Des balises hreflang dupliquées dans TranslatePress ? Distinguez les balises régionales valides des URL contradictoires, vérifiez leur source et comparez l'approche de LingoWP. - URL: https://www.lingowp.com/fr/blog/translatepress-hreflang-duplique/ - Author: Amine Sayagh - Category: Dépannage - Published: 2026-10-06 - Language: fr Votre audit SEO signale des balises hreflang dupliquées. Vous vérifiez la page et trouvez deux entrées françaises. Faut-il en supprimer une ? **Comparez d'abord les codes de langue exacts et les destinations. Une entrée `fr-BE` répétée qui pointe vers deux URL différentes doit être examinée. Une entrée `fr` et une entrée `fr-BE` qui pointent vers la même page française appropriée peuvent être valides.** La correction dépend de la nature du problème : sortie redondante, destinations contradictoires ou mauvaise association entre pages. Les réglages régionaux de TranslatePress expliquent certaines entrées qui semblent répétées ; d'autres cas exigent de vérifier une intégration ou une source d'annotations personnalisée. Ce guide montre ce qu'il faut garder, ce qu'il faut corriger et comment LingoWP cherche à garder cohérentes les destinations linguistiques de chaque page. *Publié par LingoWP. La documentation externe a été vérifiée le 6 octobre 2026. L'explication sur LingoWP s'appuie sur sa revue de développement de la version 1.5.* ## Trois situations qui peuvent ressembler à des hreflang dupliqués Hreflang identifie les équivalents linguistiques ou régionaux d'une page. Le code et la destination fonctionnent ensemble : compter les entrées « françaises » sans examiner les deux peut mener à une mauvaise correction. | Entrées sur une même page | Ce que vous avez | Étape suivante appropriée | |---|---|---| | `fr-BE` → `/fr/contact/`, répétée à l'identique | Sortie redondante | Trouver pourquoi la même entrée apparaît deux fois et supprimer la répétition | | `fr-BE` → `/fr/contact/` et `fr-BE` → `/fr/contactez-nous/` | Destinations concurrentes pour le même code | Établir l'URL actuelle prévue et corriger l'entrée contradictoire | | `fr` → `/fr/contact/` et `fr-BE` → `/fr/contact/` | Ciblage générique et régional | Vérifier que les deux sont voulues ; ne pas en supprimer une uniquement parce que l'URL se répète | Ce sont des exemples illustratifs, pas de nouveaux défauts reproduits dans TranslatePress. Le contrôle **Multiple Entries** de Screaming Frog identifie plusieurs entrées pour un même code de langue ou de région. Il peut aussi détecter plusieurs méthodes d'implémentation, comme des balises HTML et des en-têtes HTTP. Lisez le détail de l'avertissement avant de décider de ce qui ne va pas. [Voir l'explication de l'outil](https://www.screamingfrog.co.uk/seo-spider/issues/hreflang/multiple-entries/). ## Pourquoi TranslatePress peut afficher à la fois fr et fr-BE `fr` cible le français sans région précise. `fr-BE` identifie le français de Belgique. Ce sont deux codes différents. Google autorise une destination de langue générique à utiliser l'une des pages régionales de cette langue. Partager une URL ne rend donc pas automatiquement invalides les entrées générique et régionale. [Lire les consignes de Google sur les pages localisées](https://developers.google.com/search/docs/specialty/international/localized-versions). Le réglage **Remove duplicate hreflang** de TranslatePress propose le format par pays, le format indépendant de la région, ou les deux. Sa documentation indique que les deux sont affichés par défaut. Vous trouverez l'option dans **Réglages → TranslatePress → Avancé → Divers**. Son nom prête facilement à confusion : il contrôle le format des entrées de langue ; il n'établit pas qu'associer ciblage générique et régional est un bug. [Voir la documentation officielle des réglages avancés](https://translatepress.com/docs/settings/advanced-settings/). Choisissez le format qui correspond à votre public cible. Préservez un ciblage pertinent au lieu de chercher le plus petit nombre de balises. ## Quand un même code pointe vers des URL différentes Un problème plus important survient lorsqu'une page déclare deux destinations concurrentes pour exactement le même code. Par exemple, une entrée `fr-BE` peut identifier la page traduite qui fonctionne, tandis qu'une autre utilise un slug ancien ou non traduit. Avant de supprimer quoi que ce soit, déterminez quelle destination représente l'équivalent français prévu. Dans une discussion d'assistance TranslatePress concernant The Events Calendar, un utilisateur a signalé deux entrées `fr-BE` sur certaines pages d'événements : l'une utilisait le slug traduit, l'autre un slug non traduit qui ne fonctionnait pas. L'assistance n'a pas pu reproduire le doublon en vérifiant l'exemple et a demandé d'autres éléments. Cette discussion illustre le symptôme à examiner. Elle n'établit ni la cause sur chaque installation, ni l'existence d'un défaut persistant dans chaque version. [Lire le signalement et la réponse](https://wordpress.org/support/topic/translatepress-the-events-calendar-duplicate-hreflang-with-untranslated-slug/). ## Comment diagnostiquer et corriger des balises hreflang dupliquées ### 1. Examinez les entrées réelles d'une page Ouvrez une page concernée, choisissez **Afficher le code source de la page** et recherchez `hreflang`. Notez chaque code pertinent avec son URL de destination complète. Vérifiez la page publique en étant déconnecté, ainsi que la page examinée par votre audit. Comparez des URL équivalentes au lieu de mélanger la page d'origine avec un aperçu de l'éditeur. Déterminez si l'avertissement concerne : - Le même code et la même URL répétés dans le HTML de la page. - Le même code pointant vers des destinations différentes. - Des codes régionaux et génériques distincts partageant une destination. - Des annotations détectées par plus d'une méthode. Des références répétées sur différentes pages linguistiques sont normales. Chaque page décrit ses équivalents ; c'est différent d'entrées contradictoires dans les déclarations d'une même page. ### 2. Confirmez la bonne destination et le rôle de la page Ouvrez chaque URL concurrente et vérifiez son adresse finale, sa réponse, sa langue et son contenu. Une URL qui se charge correctement peut quand même être le mauvais équivalent. La version française d'un article doit représenter cet article. Une archive d'étiquette doit pointer vers l'archive d'étiquette correspondante, pas vers un article isolé ou un sujet sans rapport. À titre d'illustration : | Page d'origine | Équivalent adapté | Association à examiner | |---|---|---| | Page de contact | Page de contact dans la langue cible | Page d'accueil | | Article sur les voyages | Traduction de cet article | Archive de l'étiquette voyage | | Archive de l'étiquette voyage | Archive d'étiquette voyage correspondante | Une catégorie sans rapport | Pour les archives, comparez le sujet et le rôle de la page. Un libellé traduit ne prouve pas à lui seul que l'URL identifie la bonne archive. Si une destination redirige ou renvoie une 404, établissez la bonne adresse qui fonctionne avant d'ajuster l'ensemble des langues. Ne conservez pas une destination cassée simplement parce qu'une autre page y fait aussi référence. Les guides pour les cas où [hreflang pointe vers une redirection](/fr/blog/translatepress-hreflang-redirection/) et où [hreflang pointe vers une page 404](/fr/blog/translatepress-hreflang-404/) couvrent ces vérifications. ### 3. Trouvez ce qui génère l'entrée en trop TranslatePress n'est peut-être pas le seul composant à fournir des annotations de langue. Vérifiez les intégrations qui génèrent explicitement hreflang, les extraits de code personnalisés, les personnalisations de l'en-tête du thème et les restes d'une ancienne configuration multilingue. Sur une copie de préproduction, comparez la sortie avant et après la désactivation d'une source d'annotations suspectée. Si sa suppression fait disparaître l'entrée en trop, vous tenez une piste utile. Vérifiez que les entrées restantes sont complètes et correctes avant d'appliquer ce changement au site en ligne. Si un composant propose un réglage pour désactiver sa sortie hreflang, utilisez ce réglage. Sinon, demandez à son équipe d'assistance ou à son développeur comment arrêter la sortie redondante sans supprimer des fonctionnalités SEO sans rapport. L'objectif est d'éviter que des composants indépendants publient des destinations linguistiques contradictoires pour une même page. ### 4. Vérifiez les réglages régionaux et les correspondances de codes personnalisées Si les entrées sont simplement `fr` et `fr-BE`, comparez le réglage de format de TranslatePress à votre ciblage prévu. Vous pouvez décider de garder les deux. Si deux entrées utilisent exactement le même code, examinez toute correspondance de code de langue personnalisée. Une personnalisation qui attribue le même code à différentes versions configurées peut créer un conflit même si leurs URL sont valides individuellement. TranslatePress documente un filtre `trp_hreflang` pour modifier le code affiché. Si votre développeur l'a utilisé, demandez-lui de revoir la correspondance en même temps que les réglages actuels. Vous n'avez pas besoin d'ajouter du code personnalisé simplement pour choisir entre les formats régionaux standard. [Voir la documentation développeur](https://translatepress.com/docs/developers/change-hreflang-localization/). ### 5. Corrigez les mauvais slugs ou associations d'archives Lorsqu'une entrée utilise une mauvaise adresse de page, corrigez le réglage ou l'intégration qui génère cette destination. Le SEO Pack payant de TranslatePress prend en charge la traduction des slugs de pages, de termes, de taxonomies et de types de contenu. Vérifiez la catégorie de slug concernée au lieu de traiter chaque mot d'un chemin comme le nom de la page. [Sa documentation présente les types de slugs pris en charge](https://translatepress.com/docs/addons/seo-pack/). Une base d'archive traduite n'est pas forcément fausse. Elle doit correspondre à un routage que votre configuration prend réellement en charge. Comparez l'archive prévue avec une adresse qui fonctionne, et examinez l'extension qui définit ce chemin si les deux divergent. Lorsque vous contactez l'assistance, montrez les deux entrées et la bonne destination : > Sur cette page, deux entrées fr-BE pointent vers des adresses différentes. Celle-ci est la traduction qui fonctionne ; l'autre mène à un ancien slug. Voici l'URL de la page, les deux entrées et les versions de mes extensions actives. C'est plus exploitable que de signaler uniquement que « hreflang est dupliqué ». ### 6. Vérifiez l'ensemble des langues après la correction Videz les caches concernés après avoir modifié les réglages à l'origine du problème, puis examinez à nouveau la sortie publique. Confirmez que : - Chaque code de langue ou de région exact a une destination prévue claire dans l'implémentation choisie. - Les entrées génériques et régionales restantes sont voulues. - Les destinations s'ouvrent aux bonnes adresses actuelles. - Les pages représentent un contenu équivalent ou des archives de sujets correspondants. - Les versions linguistiques incluent les liens de retour attendus. Le [guide de validation hreflang](https://translatepress.com/hreflang-validation-and-testing/) de TranslatePress explique comment vérifier les destinations et les liens de retour. Relancez l'audit sur les types de pages concernés, y compris les archives ou les pages d'événements le cas échéant. Si vous utilisez à la fois des annotations HTML et sitemap, vérifiez aussi que leurs destinations linguistiques concordent. Plusieurs méthodes sont autorisées, mais les combiner ne dispense pas de maintenir une sortie cohérente. Voyez quoi faire quand [les URL hreflang et du sitemap ne correspondent pas](/fr/blog/translatepress-hreflang-sitemap-incoherence/). ## Comment LingoWP garde les associations linguistiques cohérentes Pour le propriétaire d'un site, le résultat utile est clair : chaque page doit identifier le bon équivalent dans chaque langue publiée, sans maintenir des listes d'adresses concurrentes. La revue de développement de LingoWP décrit une entrée générée par langue publiée, plus une entrée `x-default`. Ses tests vérifient que les versions linguistiques listent l'ensemble attendu et se renvoient mutuellement. La revue décrit aussi la préservation des bases fixes d'étiquettes et de catégories dans les cas testés. L'objectif est de pointer vers la bonne page ou archive correspondante en utilisant des chemins pris en charge. Vous gérez les traductions dans l'espace de travail central de LingoWP tandis que l'extension génère ses associations linguistiques à partir des informations actuelles de la page. C'est une fonctionnalité concrète à évaluer lorsque la correction répétée d'annotations fait partie de votre maintenance. Le comparatif [LingoWP ou TranslatePress](/fr/blog/lingowp-vs-translatepress/) couvre les différences plus larges. **L'avantage, ce sont des destinations et des associations de pages prévisibles.** Moins de balises n'est pas forcément mieux : les entrées génériques et régionales de TranslatePress peuvent être valides, et `x-default` est une annotation de repli facultative, comme le rappelle sa [documentation de validation](https://translatepress.com/hreflang-validation-and-testing/). Les constats sur LingoWP portent sur la version analysée **1.5** et ses tests. Des extensions externes ou du code personnalisé peuvent toujours ajouter des annotations concurrentes. Vérifiez vos archives, événements ou autres intégrations réels sur une copie du site avant de changer. **[Découvrir LingoWP](https://lingowp.com/)** pour voir son espace de traduction et évaluer son approche pour votre site. ## Questions fréquentes ### Dois-je supprimer chaque URL hreflang répétée ? Non. Des codes de langue ou de région différents et valides peuvent volontairement utiliser la même destination. Vérifiez les codes et le rôle de chaque entrée avant de supprimer quoi que ce soit. ### « Remove duplicate hreflang » corrigera-t-il deux URL fr-BE contradictoires ? Ce réglage choisit le format par pays, générique ou les deux. Il peut changer les entrées affichées, mais une adresse contradictoire provenant d'une autre intégration ou personnalisation doit toujours être corrigée à la source. Vérifiez ensuite la sortie réelle. ### Une URL qui fonctionne suffit-elle à prouver que l'association est correcte ? Non. Confirmez qu'elle contient le contenu correspondant dans la langue attendue. Une archive d'étiquette qui fonctionne n'est pas automatiquement l'équivalent d'un article qui fonctionne.