- Promo !
Multi hreflang
Ce module permet de gérer correctement les balises "hreflang" nécessaires quand vous avez un site ou plusieurs sites proposant le même contenu en différentes langues
A quoi sert l'attribut hreflang de la balise link ?
Si votre site PrestaShop est traduit en plusieurs langues, ou que vous proposez un contenu ciblant une région ou un pays spécifique, Google recommande (fortement) l'utilisation d'une nouvelle balise HTML depuis quelques années : la balise (ou plutôt 'attribut) "hreflang" dont la syntaxe est la suivante :
<link rel="alternate" href="http://example.com/fr" hreflang="fr" />
Cette balise est particulièrement utile dans les cas suivants :
- vous avez un site entièrement traduit, soit en plusieurs langues, soit avec une configuration "multiboutiques" avec chacune une ou plusieurs langues activées
- vous avez un contenu identique mais disponible depuis plusieurs URLs : example.ch propose un catalogue disponible en français, allemand et anglais pour la Suisse (avec des prix en CHF par exemple), et example.com propose le même catalogue dans les mêmes langues, mais pour le reste du monde (en EURO)
- vous avez activé plusieurs langues dans PrestaShop mais pas traduit vos fiches produits : seule l'interface de PrestaShop est traduite
Si vous êtes dans un de ces cas-là,il vous faut donc lister dans le code HTML de chaque page de votre site les URLs de chaque version de la page (y compris elle-même).
Si vous n'utilisez qu'une seule langue, ou que vous n'avez qu'une seule boutique, ce module ne vous sera d'aucune utilité. Google sait "détecter" la langue d'une page tout seul.
Besoin de plus d'information concernant cette balise ? Consultez la page Google expliquant l'utilisation du hreflang.
L'intérêt du module multihreflang
Ces balises n'étant pas générées par PrestaShop en natif, ce module vous permettra, pour chaque langue de chaque boutique activée, d'indiquer le code ISO (de type "fr-FR" pour le français en France, ou "en" pour l'anglais quelle que soit la région) et inclura les balises adéquates dans l'entête du code HTML des pages de votre site PrestaShop.
La présence des balises "hreflang" permettra à Google :
- d'afficher dans les SERP (pages de résultats) l'URL qui correspond à la langue ou à la région de l'internaute
- de ne pas vous pénaliser pour "contenu dupliqué" ("duplicate content") si votre contenu est le même en français sur le site destiné à la France et à la Suisse, par exemple.
Un cas concret !
Regardez le code source d'une page du site www.boniclassic.com pour qui j'ai eu besoin de développer ce module. Le site existe en 2 versions (multiboutiques) avec les extensions .ch et .com. Dans chaque boutique, 3 langues sont activées : le français, l'anglais et l'allemand. Pour une langue donnée, la description des produits est bien évidemment la même sur le site "Suisse" et sur le site "Reste du monde". L'unique différence est la devise, en CHF sur le .ch et en EUR sur le .com
Chaque page du site contient 6 balises "link... hreflang" qui listent ainsi toutes les versions de la page (2 sites x 3 langues).
Ainsi, tout risque de contenu dupliqué est écarté, et un utilisateur en France se verra présenter la version "Monde" des pages alors qu'un visiteur en Suisse retrouvera les URLs du site "Suisse" dans ses SERP !
Versions
Version 1.1.6 du 14/10/2016
Correction d'un bug dans l'URL équivalente sur la page d'accueil de la boutique.
Version 1.1.7 du 02/11/2016
Création des URLs équivalentes uniquement pour les boutiques pour lesquelles le module est activé.
Version 1.1.8 du 26/06/2017
Le hreflang de la page d'accueil n'était pas en https pour les sites qui sont en https.
Version 1.1.9 du 16/08/2017
Les boutiques désactivées n'apparaissent plus dans les hreflang
Version 1.1.10 du 29/01/2018
Version compatible avec PrestaShop 1.7
Version 1.1.11 du 15/02/2018
Corrections
Version 1.1.12 du 22/11/2018
Correction d'un problème à l'installation sur les dernières versions de PrestaShop
Version 1.1.13 du 15/04/2019
Correction d'un problème sur les pages catégories de pages CMS, où le hreflang n'apparaissait pas