Comment réparer mes problèmes de microdonnées / Rich Snippets ?
Introduction sur le balisage de données structurées (microdonnées ou extraits enrichis)
Le balisage de données structurées (aussi appelé microdonnées ou extraits enrichis) est une représentation de vos données produit exploitable par des logiciels directement depuis votre site. Le balisage ajouté à votre code HTML permet à Google et à d'autres moteurs de recherche de comprendre et de traiter votre contenu de manière fiable.
Le balisage de données structurées est utilisé dans 2 grands cas de figure par Google :
- Pour enrichir vos résultats sur le moteur de recherche de Google, avec des informations additionnelles comme le prix, la disponibilité du produit, le nombre d'avis et la note moyenne (avec des étoiles).
- Dans le cadre du programme Google Shopping (en savoir plus):
- Pour un contrôle plus rapide de la cohérence entre les informations présentes dans le flux que vous envoyez sur Google Merchant Center et celles présentes sur votre site web. En effet, lorsque vous soumettez un flux de données produits sur Google Merchant Center, celui-ci est contrôlé par Google qui vérifie que les informations sont les mêmes que celles présentes sur votre site web, pour un maximum de cohérence. Le balisage permet d'automatiser ce contrôle, ce qui le rend donc plus rapide.
- Pour mettre à jour automatiquement le prix et la disponibilité de vos produits dans Google Shopping, à condition que l'option soit activée dans votre compte Google Merchant Center. Pour en savoir plus lisez cette FAQ.
Erreurs dues au mauvais balisage des données structurées de votre thème
Le système des microdonnées est très utile, mais vous pouvez rencontrer des problèmes de conformité entre votre thème personnalisé, basé sur le thème par défaut de PrestaShop, et les prérequis Google. Ceci n'a strictement rien à voir avec nos modules et est uniquement lié à votre thème.
Cependant, nous vous donnons une solution pour mettre en conformité vos prix (si jamais votre thème génère des erreurs) et ne plus avoir de problème. Si par contre l'erreur est liée à la condition des produits ou à leur disponibilité, veuillez vous rapprocher de l'éditeur de votre thème pour solutionner le problème car ce type d'erreur est vraiment liée à la spécificité de chaque thème.
Souvent, le template de votre thème n'implémente pas correctement le balisage. Or, pour que le prix soit lu correctement par Google, il doit être formaté avec des points, et non des virgules, et ne pas contenir le signe de la devise (ex: €). Afin de corriger ce problème sans modifier l'apparence du prix sur la fiche produit (la virgule et la devise sont utiles pour l'expérience client), il faut rajouter l'attribut "content" dans votre balisage, comme on vous l'explique ci-dessous :
Un problème de mauvais formatage du prix dans le template product.tpl
Allez dans votre template product.tpl. Le code existant dans le thème par défaut (à partir duquel est construit votre thème personnalisé) est celui-ci :
<span id="our_price_display" class="price" itemprop="price">{convertPrice price=$productPrice|floatval}</span>
Remplacez-le par celui-ci :
<span id="our_price_display" class="price" itemprop="price" content="{$productPrice}">{convertPrice price=$productPrice|floatval}</span>
Un problème de mauvais formatage du prix dans le template product-list.tpl
Allez dans votre template product-list.tpl. Le code existant dans le thème par défaut (à partir duquel est construit votre thème personnalisé) est celui-ci :
<span itemprop="price" class="price product-price">
Remplacez-le par celui-ci :
<span itemprop="price" class="price product-price" content="{if !$priceDisplay}{$product.price}{else}{$product.price_tax_exc}{/if}">
Un problème avec le module « Produits dans la même catégorie » de PrestaShop
Dans le dossier du module "Produits dans la même catégorie", allez dans le template "productscategory.tpl". Le code existant dans le thème par défaut (à partir duquel est construit votre thème personnalisé) est celui-ci :
<p class="price_display">
<span class="price">{convertPrice price=$categoryProduct.displayed_price}</span>
</p>
Remplacez-le par celui-ci :
<p class="price_display">
<span class="price" content="{$categoryProduct.displayed_price}">{convertPrice price=$categoryProduct.displayed_price}</span>
</p>
Un problème lié à l’emplacement des balises HTML "schema.org" encadrant l'objet "produit"
Dans certains thèmes, les balises HTML de données structurées "schema.org" encadrant l'objet "produit" (itemtype="http://schema.org/Product") sont mal positionnées. Par conséquent, les balises qui gèrent les extraits enrichis concernants les notes et les avis des produits, introduites par notre module, se retrouvent en dehors de ce balisage. Or, selon la convention "http://schema.org", elles doivent être associées et incluses dans ce balisage. Cette non-conformité est détectée par Google qui vous enverra une erreur.
Pour rappel, Google propose un outil pour tester la conformité des extraits enrichis, pour savoir comment l'utiliser, veuillez lire notre FAQ.
Dans ce cas, un travail d’investigation est nécessaire dans le thème personnalisé, afin de corriger l'emplacement des balises de l'objet produit. Si vous n'avez pas de compétences techniques, rapprochez-vous de votre éditeur de thème pour corriger le problème.