Hreflang vs Canonical

Nouveau WRInaute
Bonjour,

Je suis désolé de revenir avec mon marronnier, mais j'aimerai bien avoir plusieurs opinions sur ce sujet qui revient régulièrement...
Suite aux formations WRI, j'étais parti du principe qu'il ne fallait pas mettre de balise canonical lorsqu'on utilisait les balise hreflang. Peut-être que j'avais mal compris...
Mais je lis de plus en plus de post qui affirme qu'il faut absolument mettre les 2...

Que faire ? ou plutôt comment faites vous ?

Merci
 
Olivier Duffez (admin)
Membre du personnel
aïe, tu n'as pas dû bien écouter alors ;-)
la canonique est indépendante des hreflang, je n'ai donc pas dit qu'il ne fallait pas la mettre si on utilise les hreflang
cela dit, ne pas mettre de canonique n'est pas forcément un pb
 
Nouveau WRInaute
Ah, je suis bien avancé...
Ou est-ce que je peux trouver une explication "clair et fiable" de ce qu'il faut mettre dans la canonique ?

Merci
 
Olivier Duffez (admin)
Membre du personnel
il faut mettre l'URL officielle de la page concernée
je ne vois pas où est le pb, peux-tu reformuler ta question ?
 
Nouveau WRInaute
ok, donc dans la canonique on met la même url que celle qu'on trouve dans la balise hreflang en fonction de la langue "en cours" ?
 
Olivier Duffez (admin)
Membre du personnel
oui c'est ça (j'ai du mal à me rendre compte s'il y a des cas particuliers où ça serait différent, à part bien entendu les sites mobiles sur une URL distincte de l'URL pour desktop)
 
WRInaute passionné
Personnellement, je ne vois pas pourquoi on employerait systématiquement le canonical en plus du href lang. Celui-ci se suffit à lui seul pour ce qui est d'indiquer à Google à quel public est destinée la page.

je lis de plus en plus de post qui affirme qu'il faut absolument mettre les 2...

En fait, pour bien comprendre, il faut avoir suivi la question dans le temps. Le canonical est bien antérieur au hreflang. Il est apparu que dans l'international, le canonical pouvait conduire à des erreurs. Quand le hreflang a été introduit, il indiquait clairement à Google à quel public "régional" (au sens anglais du terme, ex. public français, belge ou canadien) la page s'adressait et Google a recommandé alors d'employer les href lang (au lieu du canonical) à cet effet.

Donc, pour résumer:
-- pages avec un même contenu pour des publics "régionaux" différents: href lang

-- pages avec un même contenu pour un même public: canonical

Dans ce sens, lire google webmaster support en matière de sites internationaux ou multilingues:

Cependant, si vous fournissez le même contenu aux mêmes internautes avec des URL différentes (par exemple, si example.de/ et example.com/de/ affichent du contenu en allemand aux internautes situés en Allemagne), choisissez une version préférée et redirigez ou utilisez l'élément "link" rel=canonical de manière appropriée.

Le canonical (ex un même contenu en allemand pour les Allemands sur des URLs différentes), ce n'est donc pas du tout le même emploi que le href lang (ex. un même contenu en allemand pour des Suisses, des Allemands et des Autrichiens sur des URLs différentes)

Cumuler d'office le canonical et le href lang sans raison est une mauvaise politique.
.
 
Olivier Duffez (admin)
Membre du personnel
en effet, le choix d'utiliser la canonical n'a pas de rapport avec la présence ou l'absence de hreflang
si on pense avoir besoin des canonical, ou par simple prévention (de duplicate content), on peut en utiliser, qu'il y ait des hreflang ou pas
 
Nouveau WRInaute
Ok je comprend,

Actuellement j'ai une page
/fr/la-chambre/abat-jour-applique-ivoire/fr/produit-23857.html

qui comprend les hreflang suivant :
Code:
<link rel="https://www.hotelmegastore.com/fr-be/la-chambre/abat-jour-applique-ivoire/fr/produit-23857.html" hreflang="fr-be" />
<link rel="https://www.hotelmegastore.com/de-de/furs-zimmer/lampenschirm-fur-wandleuchte-elfenbein/de/produit-23857.html" hreflang="de-de" />
<link rel="https://www.hotelmegastore.com/it-it/la-camera/abat-jour-applique-avorio/it/produit-23857.html" hreflang="it-it" />
<link rel="https://www.hotelmegastore.com/fr/la-chambre/abat-jour-applique-ivoire/fr/produit-23857.html" hreflang="fr" />

il s'agit du même produit traduit dans les différentes langues des pays qui m’intéresse.

Si j'ai bien compris je n'ai donc pas besoin de canonical sauf si le domaine
hotelmegastore.de renvoyait aussi vers la page https://www.hotelmegastore.com/de-de/.
Actuellement il y a une redirection 301 du NDD en .de/... vers le NDD .com/de-de/...

Merci
 
Olivier Duffez (admin)
Membre du personnel
ta version en allemand n'est que pour l'Allemagne ? ça m'étonnerait mais c'est ce qu'indique ton code
idem pour la version en italien
 
Olivier Duffez (admin)
Membre du personnel
ça suppose que l'adresse de l'internaute au moment de sa visite sur le site est dans le même pays que la livraison. mais si c'est un choix du client, ok...
 
WRInaute passionné
qu'en France Allemagne, Italie et Belgique

Si on vise expressément des zones géographiques telles que l'Allemagne et l'Italie au départ d'un site.com hébergé en France (c'est ton cas), mon opinion est qu'il faut d'abord utiliser le ciblage géographique de search console Google et Bing pour le répertoire /de/ en Allemagne et le répertoire /it/ en Italie.

Pour le répertoire /de/, ta balise titre et la balise description sont restées en français . A corriger.

Pour la Belgique, ton site a-t-il bien des pages /fr-be/ comme tu l'indiques ci-dessus? Il redirige sur la version française chez moi (environs de Bruxelles).
 
Nouveau WRInaute
Merci pour ces explications.

Si je comprends bien un site qui n'a qu'une seule tld ne doit avoir qu'un seul lien canonique et non un lien un canonique traduit dans chaque langue. C'est bien cela.

Par exemple:

Version FR
HTML:
<link rel="alternate" hreflang="fr" href="https://example.com/produit.html" />
<link rel="alternate" hreflang="it" href="https://example.com/produtto.html" />
<link rel="alternate" hreflang="en" href="https://example.com/product" />
<link rel="alternate" hreflang="de" href="https://example.com/produkt" />
<link rel="canonical" href="https://example.com/produit.html" />

Version IT
HTML:
<link rel="alternate" hreflang="fr" href="https://example.com/produit.html" />
<link rel="alternate" hreflang="it" href="https://example.com/produtto.html" />
<link rel="alternate" hreflang="en" href="https://example.com/product" />
<link rel="alternate" hreflang="de" href="https://example.com/produkt" />
<link rel="canonical" href="https://example.com/produtto.html" />

Version EN
HTML:
<link rel="alternate" hreflang="fr" href="https://example.com/produit.html" />
<link rel="alternate" hreflang="it" href="https://example.com/produtto.html" />
<link rel="alternate" hreflang="en" href="https://example.com/product" />
<link rel="alternate" hreflang="de" href="https://example.com/produkt" />
<link rel="canonical" href="https://example.com/product.html" />

Version DE
HTML:
<link rel="alternate" hreflang="fr" href="https://example.com/produit.html" />
<link rel="alternate" hreflang="it" href="https://example.com/produtto.html" />
<link rel="alternate" hreflang="en" href="https://example.com/product" />
<link rel="alternate" hreflang="de" href="https://example.com/produkt" />
<link rel="canonical" href="https://example.com/produkt.html" />

Faire comme cela serait donc un mauvais choix ?

Merci d'avance
 
Olivier Duffez (admin)
Membre du personnel
ça semble bon, à part qu'un regroupement des URL par langue serait pratique, par exemple dans un répertoire à la racine.
entre nous, s'il n'y a que des langues et pas de pays, les hreflang c'est un peu du zèle. tant qu'à faire on les met, mais est-ce vraiment exploité par Google ?
 
  • Like
Reactions: DKO
WRInaute occasionnel
Bonjour,

dans le même genre, j'ai un cas qui n'est pas correctement pris en compte par Google et je n'en trouve pas la cause.

Deux sites quasiment identiques, l'un cible la Belgique francophone, l'autre le reste du monde francophone. Les deux sites sont donc en français. Voici un exemple des entêtes que j'ai mis pour une page donnée :

fr , sur https://www.monsite.com/page.html
Code:
<link rel="canonical" href="https://www.monsite.com/page.html"/>
<link rel="alternate" hreflang="fr" href="https://www.monsite.com/page.html"/>
<link rel="alternate" hreflang="fr-be" href="https://www.monsite.be/page.html"/>

fr-be , sur https://www.monsite.be/page.html
Code:
<link rel="canonical" href="https://www.monsite.be/page.html"/>
<link rel="alternate" hreflang="fr" href="https://www.monsite.com/page.html"/>
<link rel="alternate" hreflang="fr-be" href="https://www.monsite.be/page.html"/>

Pour une part non négligeable de pages, si je recherche https://www.monsite.com/page.html sur google.fr (avec une localisation réglée sur France), c'est https://www.monsite.be/page.html qui sort. Et inversement (page fr qui sort sur google.be à la place de la page fr-be). La nouvelle Search Console m'indique d'ailleurs 'Page en double : Google n'a pas choisi la même URL canonique que l'utilisateur' pour ces pages là : il semble que Google n'indexe que https://www.monsite.com/page.html ou que https://www.monsite.be/page.html et pas toujours les deux pages.

Je précise que les entêtes sont présents depuis plus de 6 mois.

Si tant est que les entêtes soient correctement implémentés, je me pose la question de l'intérêt des hreflang utilisé dans le cadre d'un site multirégional pour une même langue car ils semblent mal pris en compte par Google.

Constatez-vous la même chose? Un avis ou une solution?
 
WRInaute occasionnel
Merci, mais je précise que si je poste un message, c'est que j'ai fouillé dans toutes les docs disponibles sur le sujet, en particulier celles de Google. Et je n'y ai pas trouvé de solution à mon problème...
 
Olivier Duffez (admin)
Membre du personnel
ça donne quoi comme stats dans search console ? est-ce que le trafic pour le be vient uniquement de Belgique ?

je dis ça car tes tests ne sont peut-être pas bons. Par exemple tu dis "page fr qui sort sur google.be à la place de la page fr-be" mais la page "fr-be" n'est pas destinée à sortir quand on cherche sur google.be mais à sortir quand Google nous géolocalise en Belgique et qu'il identifie notre langue comme fr
 
WRInaute occasionnel
Merci de ta réponse Olivier. J'ai fait les tests sur le .be en paramétrant le pays (sur la home Google, paramètre en bas à droite) = Belgique. Et d'ailleurs, le test inverse marche aussi pour pas mal de pages (le .be qui sort sur google.fr). J'ai un utilisateur en France qui m'a signalé récemment ce problème, d'où mes investigations.

Sur le .be , j'ai 94% d'utilisateurs qui viennent de Belgique et 4% qui viennent de France (données Search Console).
 
Olivier Duffez (admin)
Membre du personnel
Sur le .be , j'ai 94% d'utilisateurs qui viennent de Belgique et 4% qui viennent de France (données Search Console).
search console ne liste pas les utilisateurs mais les clics
il y a peut-être des explications pour les 6% qui ne semblent pas "coller" (par exemple l'absence d'URL pour certains contenus, ou une difficulté de Google à géolocaliser l'internaute, ou des originaux qui paramètrent leur Google pour la Belgique bien qu'étant en France)
 
WRInaute passionné
1. Vu l'indication donnée que "...Google n'a pas choisi la même URL canonique…", il doit y avoir un problème dans les hreflang. Je ne sais pas si c'est une très bonne idée de "combiner" un hreflang="fr" (qui donc vise l'ensemble des pays de langue fr, sans en exclure la Belgique) avec un autre en fr-be, même si rien ne l'interdit.

Je trouve plus clair pour un moteur de comprendre une combinaison fr-fr et fr-be (ou une combinaison hreflang="fr" et hreflang="de" quand les langues sont différentes).

Ce n'est qu'un préjugé personnel (sans plus). Peut-être que Olivier pourrait donner un avis plus fondé sur ce point précis ?

2. D'autre part, les hreflang, c'est bien. Encore ne faut-il pas négliger le reste:
-- Ton site .com (visant le hors-Belgique) n'est-il pas hébergé en Belgique ?
-- qu'en est-il du netlinking (quantité, qualité, provenance) respectif de chacun de tes deux sites ?
 
Olivier Duffez (admin)
Membre du personnel
s'il a une version FR pour la Belgique et une pour le reste des francophones, je ne vois pas ce qu'il peut faire d'autre que ce qu'il a décrit ci-dessus ?
 
WRInaute occasionnel
1) effectivement, Olivier a bien résumé dans sa réponse, ce sont d'ailleurs les recommandations qu'on trouve un peu partout.

2) le .be a très rapidement eu du trafic, sans travail de netlinking. Il est sur une IP belge. Il semble tout de même que le linking du site principal (qui est relativement bon) profite au .be avec les hreflang.

Question un peu naïve, mais sait-on jamais : est-ce que l'ordre dans lequel les balise hreflang apparaissent est important. Ie, vaut-il mieux laisser comme ça :
Code:
<link rel="alternate" hreflang="fr" href="https://www.monsite.com/page.html"/>
<link rel="alternate" hreflang="fr-be" href="https://www.monsite.be/page.html"/>

ou préférer l'ordre suivant :
Code:
<link rel="alternate" hreflang="fr-be" href="https://www.monsite.be/page.html"/>
<link rel="alternate" hreflang="fr" href="https://www.monsite.com/page.html"/>

(le hreflang 'par défaut' en dernier).
 
Discussions similaires
Haut