Microdonnées & SEO
Génère automatiquement des données structurées Schema.org VideoObject pour vos vidéos produits, afin que les moteurs de recherche puissent afficher des résultats enrichis — avec une miniature, une durée et un bouton de lecture — directement dans les résultats de recherche Google.
Disponible depuis la v3.0.0
Vue d'ensemble
Lorsque vous activez la génération de microdonnées, le module récupère les métadonnées vidéo depuis les API officielles de YouTube et Vimeo, puis les injecte sous forme de balisage JSON-LD VideoObject dans le <head> de chaque fiche produit. Pour les vidéos HTML5 auto-hébergées, le module construit le balisage à partir du titre, de l'URL et de la miniature stockés, sans aucun appel à une API externe.
Google utilise ces données structurées pour créer des résultats enrichis vidéo : des résultats de recherche améliorés affichant une miniature, le titre de la vidéo et un badge de durée à côté de votre produit. Ces résultats apparaissent aussi bien dans la recherche classique que dans l'onglet vidéo dédié de Google, ce qui améliore les taux de clics pour les produits associés à des vidéos.
Les métadonnées de chaque vidéo sont mises en cache dans votre base de données pendant 7 jours après la première visite de la page. Les visites suivantes pour la même vidéo utilisent les données en cache, de sorte que les appels API restent limités même sur les boutiques à fort trafic. À l'expiration de la fenêtre de 7 jours, le module actualise silencieusement les données au prochain chargement de page.
Les microdonnées YouTube capturent également le nombre de vues, le nombre de commentaires et les mots-clés. Les microdonnées Vimeo capturent le nombre de lectures et les tags. Les deux fournisseurs renseignent le champ interactionStatistic, qui fait partie des propriétés VideoObject recommandées par Google.
Configuration
- Allez dans Modules > Gestionnaire de modules, trouvez Product Video et cliquez sur Configurer.
- Ouvrez l'onglet SEO & Microdonnées.
- Activez l'interrupteur principal, saisissez vos identifiants API et cliquez sur Enregistrer.
Activation
| Champ | Valeurs | Défaut | Description |
|---|---|---|---|
| Ajouter des microdonnées vidéo à la fiche produit | Activé / Désactivé | Désactivé | Interrupteur principal. Lorsqu'il est activé, le module injecte le balisage JSON-LD VideoObject sur chaque fiche produit disposant d'une vidéo assignée. |
API YouTube
| Champ | Valeurs | Défaut | Description |
|---|---|---|---|
| Clé API | Texte | — | Votre clé YouTube Data API v3. Obligatoire pour récupérer les titres, descriptions, miniatures, dates de mise en ligne, durées et nombres de vues des vidéos YouTube. |
Pour obtenir une clé API YouTube :
- Rendez-vous sur console.developers.google.com et connectez-vous.
- Créez un projet (ou sélectionnez-en un existant).
- Activez la YouTube Data API v3 sous APIs & Services.
- Allez dans Identifiants, créez une nouvelle clé API et copiez-la.
- Collez la clé dans le champ Clé API et enregistrez.
Sans clé API YouTube valide, aucune microdonnée ne sera générée pour les vidéos YouTube — même si l'interrupteur principal est activé.
API Vimeo
Vimeo requiert trois identifiants distincts obtenus depuis une application développeur Vimeo enregistrée.
| Champ | Valeurs | Défaut | Description |
|---|---|---|---|
| Vimeo Client ID | Texte | — | L'identifiant client issu de l'enregistrement de votre application Vimeo. |
| Vimeo Client Secret | Texte | — | Le secret client issu de l'enregistrement de votre application Vimeo. |
| Vimeo App Token | Texte | — | Le jeton d'accès personnel généré pour votre application Vimeo. |
Pour obtenir les identifiants API Vimeo :
- Rendez-vous sur developer.vimeo.com/apps et connectez-vous.
- Cliquez sur Create app et renseignez les informations requises.
- Une fois l'application créée, copiez le Client ID et le Client Secret depuis la page de détail de l'application.
- Sous Personal access tokens, générez un nouveau jeton avec au moins la portée
public. - Collez les trois valeurs dans les champs correspondants et enregistrez.
Les trois champs Vimeo doivent être renseignés ensemble. Si l'un d'eux est manquant, aucune microdonnée Vimeo ne sera générée.
Vidéos HTML5
| Champ | Valeurs | Défaut | Description |
|---|---|---|---|
| Jeton des vidéos HTML5 | Texte en lecture seule | Auto-généré | Jeton de sécurité généré automatiquement par le module. Il est utilisé en interne par le contrôleur de capture des microdonnées côté front-end pour les vidéos HTML5. Vous n'avez pas besoin de copier ni d'interagir avec cette valeur. |
Débogage
| Champ | Valeurs | Défaut | Description |
|---|---|---|---|
| Activer la journalisation des erreurs API | Activé / Désactivé | Désactivé | Lorsqu'il est activé, toute erreur API (clé invalide, échec réseau, vidéo introuvable) est consignée dans Back Office > Paramètres avancés > Journaux. Activez-le temporairement pour diagnostiquer des microdonnées manquantes, puis désactivez-le à nouveau. |
Fonctionnement
Vidéos YouTube et Vimeo
Lorsqu'un client ouvre une fiche produit :
- Le module vérifie si la génération de microdonnées est activée et si le produit possède des vidéos YouTube ou Vimeo.
- Pour chaque vidéo éligible, il consulte la table
product_videos_microdatadans votre base de données. - Si aucune entrée en cache n'existe, ou si l'entrée en cache a 7 jours ou plus, le module appelle l'API YouTube Data v3 (ou l'API Vimeo) pour récupérer : titre, description, URLs des miniatures, date de mise en ligne, durée, nombre de vues et mots-clés.
- Les métadonnées sont enregistrées dans la base de données sous l'identifiant de cette vidéo.
- Un bloc
<script type="application/ld+json">contenant le balisage VideoObject est injecté dans le<head>de la fiche produit.
Lors des visites suivantes, les étapes 3 à 4 sont ignorées et les données en cache sont utilisées directement, jusqu'à l'expiration des 7 jours.
Lorsqu'un produit possède plusieurs vidéos, le module génère un seul bloc JSON-LD utilisant le type ItemList, avec chaque vidéo comme itemListElement numéroté. Cela permet à Google de comprendre que plusieurs vidéos sont disponibles pour le produit.
Vidéos HTML5 auto-hébergées
Les vidéos HTML5 ne nécessitent aucune API externe. Le module construit le VideoObject à partir des données déjà stockées dans votre base de données : le titre, l'URL et le chemin de la miniature de la vidéo. Les chemins relatifs sont automatiquement convertis en URLs absolues.
Le module utilise également un mécanisme de capture côté front-end. La première fois qu'un visiteur lit une vidéo HTML5, un appel AJAX léger envoie la durée réelle de la vidéo (lue depuis l'élément media du navigateur) au contrôleur de microdonnées du module, qui la stocke dans le cache. Les générations ultérieures des microdonnées de cette vidéo incluront la durée réelle à la place de la valeur par défaut PT0S.
Les microdonnées HTML5 sont générées dès que PV_GENERATE_MICRODATA est activé — aucune clé API n'est requise.
Ce qui n'est pas pris en charge
Les fournisseurs vidéo personnalisés et les fournisseurs d'intégration par iframe uniquement ne génèrent pas de microdonnées VideoObject. Seuls les types de vidéos YouTube, Vimeo et HTML5 sont pris en charge.
Exemples d'utilisation
Exemple : Ajout de microdonnées SEO pour une démo produit YouTube
Vous vendez un appareil électroménager et avez une vidéo de démonstration produit YouTube (par ex. https://www.youtube.com/watch?v=dQw4w9WgXcQ) assignée au produit. Vous activez Ajouter des microdonnées vidéo, saisissez votre clé API YouTube et enregistrez. Lors de la prochaine visite de la fiche produit, le module récupère le titre, la description, la miniature et le nombre de vues de la vidéo depuis YouTube et génère un bloc VideoObject. En quelques jours, le test des résultats enrichis de Google confirme que les données structurées sont valides et Google commence à afficher la miniature vidéo dans les résultats de recherche pour le produit.
Exemple : Utilisation des microdonnées Vimeo pour une marque de mode
Une boutique de vêtements héberge des vidéos produits en privé sur Vimeo. Vous créez une application développeur Vimeo, générez un jeton d'accès personnel avec la portée public et saisissez les trois identifiants. Après enregistrement, les fiches produits avec des vidéos Vimeo génèrent un balisage VideoObject incluant la miniature, la durée et le nombre de lectures Vimeo. Le cache étant par identifiant vidéo, l'ajout de la même vidéo Vimeo à 30 variantes produit ne génère qu'un seul appel API par cycle de 7 jours.
Exemple : Vidéo HTML5 auto-hébergée avec capture de durée
Une boutique héberge des vidéos produits .mp4 sur son propre serveur et n'a pas accès aux API. Après avoir activé la génération de microdonnées (aucune clé API n'est nécessaire pour HTML5), chaque fiche produit génère immédiatement un VideoObject basique avec le titre, la miniature et l'URL du contenu. La première fois qu'un visiteur réel lit la vidéo dans son navigateur, la durée réelle est silencieusement capturée et stockée. Toutes les microdonnées futures pour cette vidéo incluront la durée ISO 8601 correcte (par ex. PT2M35S).
Remarques importantes
- Les clés API sont obligatoires pour YouTube et Vimeo. L'interrupteur principal seul ne suffit pas pour les vidéos hébergées sur ces plateformes. Sans clé valide, ces vidéos ne produisent aucune microdonnée.
- Les fournisseurs personnalisés ne sont pas pris en charge. Seuls les types de vidéos YouTube, Vimeo et HTML5 génèrent un balisage VideoObject.
- Le cache est par identifiant vidéo, pas par produit. La même vidéo YouTube ou Vimeo partagée sur 50 produits ne déclenche qu'un seul appel API par fenêtre de 7 jours.
- L'indexation par Google n'est pas immédiate. Après avoir activé les microdonnées, utilisez le test des résultats enrichis de Google pour valider le balisage, mais accordez plusieurs jours à quelques semaines avant que Google commence à afficher des résultats enrichis dans les recherches.
- La durée des vidéos HTML5 commence à
PT0S. La durée réelle n'est capturée qu'après la première lecture réelle dans un navigateur. Si vous avez besoin de durées précises immédiatement, vous pouvez mettre à jour manuellement la tableproduct_videos_microdata. - Multi-boutique : Les microdonnées sont mises en cache globalement (pas par boutique). Le même VideoObject en cache est servi pour toutes les boutiques dans une configuration multi-boutique. Si des boutiques proposent des vidéos différentes pour le même produit, elles partagent la même entrée de cache.
- Les vidéos doivent être accessibles publiquement. Si une vidéo YouTube ou Vimeo est définie comme privée ou non répertoriée, l'API peut renvoyer des données incomplètes ou une erreur, ce qui se traduit par l'absence de microdonnées pour cette vidéo.
Dépannage
| Problème | Solution |
|---|---|
| Aucun bloc JSON-LD n'apparaît dans le code source de la page | Vérifiez que Ajouter des microdonnées vidéo est activé et que le produit a au moins une vidéo YouTube, Vimeo ou HTML5 assignée. Les fournisseurs personnalisés ne génèrent jamais de microdonnées. |
| Les vidéos YouTube n'ont pas de microdonnées | Vérifiez que votre clé YouTube Data API v3 est correcte et que l'API est activée dans Google Cloud Console. Activez la journalisation des erreurs API et consultez Back Office > Paramètres avancés > Journaux pour l'erreur spécifique. |
| Les vidéos Vimeo n'ont pas de microdonnées | Vérifiez que les trois champs Vimeo (Client ID, Client Secret, App Token) sont renseignés. Un jeton manquant est la cause la plus fréquente. Activez la journalisation des erreurs API pour voir la réponse de l'API. |
| Le test des résultats enrichis Google indique des champs obligatoires manquants | L'API a renvoyé des données incomplètes, généralement parce que la vidéo est privée ou non répertoriée. Rendez la vidéo publique sur YouTube ou Vimeo et attendez l'expiration du cache de 7 jours. |
| Les microdonnées sont obsolètes après la mise à jour d'une vidéo | Le cache de 7 jours n'a pas expiré. Pour forcer une actualisation immédiate, supprimez la ligne correspondante dans la table product_videos_microdata de votre base de données, puis rechargez la fiche produit. |
La durée des vidéos HTML5 affiche toujours PT0S | Le contrôleur de capture côté front-end n'a pas encore reçu de lecture réelle dans un navigateur pour cette vidéo. Visitez la fiche produit vous-même et lisez la vidéo entièrement ; la durée sera stockée après la fin de l'appel AJAX. |
Foire aux questions
Ai-je besoin à la fois d'une clé YouTube et d'identifiants Vimeo si ma boutique utilise les deux fournisseurs ?
Oui. Chaque fournisseur nécessite ses propres identifiants. Vous pouvez les configurer indépendamment — activer les métadonnées YouTube sans Vimeo (ou vice versa) fonctionne parfaitement pour les vidéos de ce fournisseur. Les vidéos d'un fournisseur sans identifiants ne produisent simplement aucune microdonnée.
L'activation des microdonnées va-t-elle ralentir mes fiches produits ?
Uniquement lors de la toute première visite pour chaque vidéo, quand le module appelle l'API YouTube ou Vimeo. Ensuite, les données en cache sont lues directement depuis votre base de données avec une seule requête SQL. Les appels API ont un délai d'expiration de 2 secondes, donc dans le pire des cas, une nouvelle vidéo ajoute un léger délai uniquement lors de son premier chargement.
Mon produit a trois vidéos de fournisseurs différents — à quoi ressemblent les données structurées ?
Le module génère un seul bloc JSON-LD utilisant le type ItemList de Schema.org, avec chaque vidéo listée comme un itemListElement numéroté. Google peut lire cela comme une liste de vidéos associées au produit. Seuls les fournisseurs disposant d'identifiants valides (ou les vidéos HTML5) apparaissent dans la liste.
Puis-je utiliser cette fonctionnalité sans compte Google ni Vimeo ?
Oui, si toutes vos vidéos produits sont des fichiers HTML5 auto-hébergés. Les microdonnées HTML5 sont générées à partir de données stockées localement — aucune API externe n'est nécessaire. Les vidéos YouTube et Vimeo nécessitent leurs identifiants API respectifs pour générer des données structurées.
Comment savoir si mes microdonnées sont valides avant que Google les indexe ?
Utilisez le test des résultats enrichis de Google — collez l'URL de votre fiche produit et il vous indiquera si les données structurées VideoObject sont valides, quels champs sont présents et les éventuels avertissements. Effectuez ce test après avoir activé la fonctionnalité et avant d'attendre des résultats dans les recherches.
Que se passe-t-il si le quota de l'API YouTube est épuisé ?
L'API YouTube Data v3 dispose d'un quota quotidien (10 000 unités par défaut par projet). Si le quota est dépassé, l'API renvoie une erreur. Avec la journalisation des erreurs API activée, vous verrez ces erreurs dans Back Office > Paramètres avancés > Journaux. Le cache des microdonnées étant valable 7 jours, la consommation du quota est bien inférieure à un appel API par page vue — c'est un appel par vidéo par 7 jours.