Sitemaps pour vidéos et autres options

Un sitemap pour vidéos est un sitemap contenant des informations supplémentaires sur les vidéos hébergées sur vos pages. Cet élément assure que l'intégralité du contenu vidéo de votre site a été capturée par nos soins, en particulier le contenu ajouté récemment ou susceptible de ne pas être pris en compte par nos mécanismes d'exploration habituels.

Bien qu'il soit conseillé d'utiliser des sitemaps pour vidéos, nous acceptons également les flux mRSS.

Bonnes pratiques concernant les sitemaps pour vidéos

Les sitemaps pour vidéos sont basés sur des sitemaps standards. De ce fait, les bonnes pratiques générales relatives aux sitemaps s'appliquent également aux sitemaps pour vidéos. Vous pouvez créer un sitemap distinct ou un flux mRSS réservé aux vidéos, ou ajouter des balises de sitemap pour vidéos dans un sitemap existant, à votre convenance.

De plus, les exigences suivantes s'appliquent spécifiquement aux sitemaps pour vidéos :

  • N'indiquez pas de vidéos sans rapport avec le contenu de la page hôte, comme un petit addenda à la page ou une vidéo sans lien avec le contenu textuel principal.
  • Googlebot doit pouvoir accéder à tous les fichiers référencés dans le sitemap pour vidéos. Cela signifie que toutes les URL du sitemap pour vidéos :
    • doivent pouvoir être explorées par les règles du fichier robots.txt ;
    • doivent être accessibles sans métafichiers ni connexion ;
    • ne doivent pas être bloquées par des pare-feu ou des mécanismes similaires ;
    • doivent être accessibles via un protocole compatible (HTTP et FTP). Les protocoles de streaming ne sont pas acceptés.

    Si vous souhaitez empêcher les spammeurs d'accéder à votre contenu vidéo au niveau des URL <player_loc> ou <content_loc>, assurez-vous que tous les robots qui accèdent à votre serveur sont bien des robots Googlebot.

Pour plus de conseils sur les vidéos dans la recherche Google, consultez nos bonnes pratiques concernant les vidéos.

Exemple de sitemap pour vidéos

Voici un exemple de sitemap standard avec extension vidéo : Il inclut deux entrées vidéo imbriquées dans une seule balise <url>. La première entrée <video> inclut toutes les balises que Google peut utiliser, tandis que la seconde ne contient que les balises obligatoires.

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
    xmlns:video="http://www.google.com/schemas/sitemap-video/1.1">
  <url>
    <loc>https://www.example.com/videos/some_video_landing_page.html</loc>
    <video:video>
      <video:thumbnail_loc>https://www.example.com/thumbs/123.jpg</video:thumbnail_loc>
      <video:title>Grilling steaks for summer</video:title>
      <video:description>
        Alkis shows you how to get perfectly done steaks every time
      </video:description>
      <video:content_loc>
        http://streamserver.example.com/video123.mp4
      </video:content_loc>
      <video:player_loc>
        https://www.example.com/videoplayer.php?video=123
      </video:player_loc>
      <video:duration>600</video:duration>
      <video:expiration_date>2021-11-05T19:20:30+08:00</video:expiration_date>
      <video:rating>4.2</video:rating>
      <video:view_count>12345</video:view_count>
      <video:publication_date>2007-11-05T19:20:30+08:00</video:publication_date>
      <video:family_friendly>yes</video:family_friendly>
      <video:restriction relationship="allow">IE GB US CA</video:restriction>
      <video:price currency="EUR">1.99</video:price>
      <video:requires_subscription>yes</video:requires_subscription>
      <video:uploader
        info="https://www.example.com/users/grillymcgrillerson">GrillyMcGrillerson
      </video:uploader>
      <video:live>no</video:live>
    </video:video>
    <video:video>
      <video:thumbnail_loc>https://www.example.com/thumbs/345.jpg</video:thumbnail_loc>
      <video:title>Grilling steaks for winter</video:title>
      <video:description>
        In the freezing cold, Roman shows you how to get perfectly done steaks every time.
      </video:description>
      <video:content_loc>
        http://streamserver.example.com/video345.mp4
      </video:content_loc>
      <video:player_loc>
        https://www.example.com/videoplayer.php?video=345
      </video:player_loc>
    </video:video>
  </url>
</urlset>

Autres exemples

L'exemple suivant montre comment ajouter une vidéo Vimeo intégrée à un sitemap pour vidéos :

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
    xmlns:video="http://www.google.com/schemas/sitemap-video/1.1">
  <url>
    <loc>https://www.example.com/videos/some_video_landing_page.html</loc>
    <video:video>
      <video:thumbnail_loc>https://www.example.com/thumbs/123.jpg</video:thumbnail_loc>
      <video:title>Lizzi is painting the wall</video:title>
      <video:description>
        Gary is watching the paint dry on the wall Lizzi painted.
      </video:description>
      <video:player_loc>
        https://player.vimeo.com/video/987654321
      </video:player_loc>
    </video:video>
  </url>
</urlset>

L'exemple suivant montre comment ajouter une vidéo YouTube intégrée à un sitemap pour vidéos :

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
    xmlns:video="http://www.google.com/schemas/sitemap-video/1.1">
  <url>
    <loc>https://www.example.com/videos/some_video_landing_page.html</loc>
    <video:video>
      <video:thumbnail_loc>https://www.example.com/thumbs/345.jpg</video:thumbnail_loc>
      <video:title>John teaches cheese</video:title>
      <video:description>
        John explains the differences between a banana and cheese.
      </video:description>
      <video:player_loc>
        https://www.youtube.com/embed/1a2b3c4d
      </video:player_loc>
    </video:video>
  </url>
</urlset>

Référence de sitemap pour vidéos

Les balises video sont définies dans l'espace de noms des sitemaps pour vidéos : http://www.google.com/schemas/sitemap-video/1.1

Pour vous assurer que Google utilise votre sitemap pour vidéos, vous devez utiliser les balises obligatoires suivantes :

Balises obligatoires
<video:video>

Élément parent pour toutes les informations concernant une seule vidéo sur la page spécifiée par la balise <loc>. Vous pouvez inclure plusieurs balises <video:video> imbriquées dans la balise <loc>, une pour chaque vidéo sur la page d'hébergement.

<video:thumbnail_loc>

URL renvoyant au fichier image de la vignette associée à la vidéo. Respectez les exigences spécifiques aux miniatures des vidéos.

<video:title>

Titre de la vidéo. Toutes les entités HTML doivent inclure un caractère d'échappement ou être encapsulées dans un bloc CDATA. Il est recommandé qu'il corresponde au titre vidéo affiché sur la page Web où la vidéo est intégrée.

<video:description>

Description de la vidéo. 2 048 caractères maximum. Toutes les entités HTML doivent inclure un caractère d'échappement ou être encapsulées dans un bloc CDATA. La description doit correspondre à celle affichée sur la page Web où la vidéo est intégrée, sans forcément être identique mot pour mot.

<video:content_loc>

URL renvoyant au fichier vidéo multimédia. Le fichier doit utiliser l'un des formats compatibles.

Consignes supplémentaires

  • Les formats HTML et Flash ne sont pas acceptés.
  • Ne doit pas être identique à l'URL de la balise parent <loc>.
  • Il s'agit de l'équivalent de VideoObject.contentUrl dans les données structurées.
  • Bonne pratique : si vous souhaitez restreindre l'accès à votre contenu tout en permettant son exploration, assurez-vous que Googlebot a accès à votre contenu en utilisant la validation de Googlebot.
<video:player_loc>

URL renvoyant vers un lecteur pour une vidéo spécifique. En général, cette information est indiquée dans l'attribut src d'une balise <embed>.

Consignes supplémentaires

  • Ne doit pas être identique à l'URL <loc>.
  • Pour les plates-formes d'hébergement de vidéos (Vimeo, YouTube, etc.) qui autorisent l'intégration de vidéos via des vidéos iframe, cette valeur remplace video:content_loc. Il s'agit de l'équivalent de VideoObject.embedUrl dans les données structurées.
  • Bonne pratique : si vous souhaitez restreindre l'accès à votre contenu tout en permettant son exploration, assurez-vous que Googlebot a accès à votre contenu en utilisant la validation de Googlebot.

De plus, les balises facultatives suivantes peuvent aider Google à mieux comprendre vos vidéos et leurs propriétés :

Balises facultatives
<video:duration>

Durée de la vidéo en secondes. Cette valeur doit être comprise entre 1 et 28800 (8 heures).

<video:expiration_date>

Date à partir de laquelle la vidéo ne sera plus disponible (au format W3C). Omettez cette balise si votre vidéo n'expire pas. Si elle est spécifiée, la recherche Google cessera d'afficher votre vidéo après cette date. Pour les vidéos récurrentes partageant la même URL, remplacez la date d'expiration par la nouvelle.

Les valeurs autorisées sont la date complète (YYYY-MM-DD) ou la date complète suivie des heures, des minutes et des secondes, puis du fuseau horaire (YYYY-MM-DDThh:mm:ss+TZD).

Exemple : 2012-07-16T19:20:30+08:00.

<video:rating>

Note de la vidéo. Les valeurs autorisées sont des nombres flottants compris entre 0,0 (minimum) et 5,0 (maximum).

<video:view_count>

Nombre de fois où la vidéo a été regardée.

<video:publication_date>

Date à laquelle la vidéo a été publiée pour la première fois, au format W3C. Les valeurs autorisées sont la date complète (YYYY-MM-DD) ou la date complète suivie des heures, des minutes et des secondes, puis du fuseau horaire (YYYY-MM-DDThh:mm:ss+TZD).

Exemple : 2007-07-16T19:20:30+08:00

<video:family_friendly>

Indique si la vidéo est disponible avec SafeSearch. Si vous omettez cette balise, la vidéo sera disponible lorsque SafeSearch sera activé.

Valeurs autorisées :

  • yes : la vidéo est disponible lorsque SafeSearch est activé.
  • no : la vidéo n'est disponible que lorsque SafeSearch est désactivé.
<video:restriction>

Indique si la vidéo doit être affichée ou masquée dans les résultats de recherche de certains pays.

Spécifiez une liste de codes pays, délimités par un espace, au format ISO 3166. Une seule balise <video:restriction> peut être utilisée pour chaque vidéo. Si la balise <video:restriction> est absente, Google considère que la vidéo peut être regardée dans tous les pays. Notez que cette balise ne concerne que les résultats de recherche. Elle n'empêche pas les internautes de trouver ni de regarder votre vidéo par d'autres moyens dans les pays exclus. Découvrez plus en détail comment appliquer des restrictions en fonction d'un pays.

Attributs :

Si la balise parent <video:restriction> est utilisée, l'attribut suivant est requis :

  • relationship : indique si l'affichage de la vidéo dans les résultats de recherche est autorisé ou non dans les pays spécifiés. Voici les valeurs possibles :
    • allow : les pays listés sont autorisés, les autres non.
    • deny : les pays listés sont bloqués, les autres non.

Exemple : L'exemple ci-dessous permet d'afficher le résultat de la recherche vidéo uniquement au Canada et au Mexique.

<video:restriction relationship="allow">CA MX</video:restriction>

<video:platform>

Indique si la vidéo doit être affichée ou masquée dans les résultats de recherche en fonction du type de plate-forme spécifié. Les plates-formes sont indiquées sous la forme d'une liste dans laquelle elles sont séparées par un espace. Notez que cette balise ne concerne que les résultats de recherche sur les types d'appareils spécifiés. Elle n'empêche pas les internautes de regarder votre vidéo sur les plates-formes exclues.

Chaque vidéo ne peut être associée qu'à une seule balise <video:platform>. Si la balise <video:platform> est absente, Google considère que la vidéo peut être lue sur toutes les plates-formes. Découvrez plus en détail comment appliquer des restrictions en fonction d'un type de plate-forme.

Valeurs autorisées :

  • web pour désigner les navigateurs des ordinateurs de bureau et des ordinateurs portables.
  • mobile pour désigner les navigateurs mobiles, tels que ceux des téléphones mobiles ou des tablettes.
  • tv pour désigner les navigateurs de téléviseurs, tels que ceux disponibles sur les consoles de jeu ou les appareils Google TV.

Attributs :

Si la balise parent <video:platform> est utilisée, les attributs suivants sont requis :

  • relationship : indique si la vidéo est autorisée ou refusée sur les plates-formes spécifiées. Voici les valeurs possibles :
    • allow : les plates-formes omises seront refusées.
    • deny : les plates-formes omises seront acceptées.

Exemple : L'exemple ci-dessous permet aux utilisateurs de voir le résultat vidéo sur le Web ou sur les téléviseurs, mais pas sur les appareils mobiles :
<video:platform relationship="allow">web tv</video:platform>

<video:requires_subscription>

Indique si la vidéo nécessite un abonnement. Valeurs possibles :

  • yes : abonnement requis.
  • no : aucun abonnement requis.
<video:uploader>

Nom de l'utilisateur ayant mis en ligne la vidéo. Vous ne pouvez pas utiliser plus d'une balise <video:uploader> par vidéo. La valeur de la chaîne ne doit pas dépasser 255 caractères.

Attributs :

  • L'attribut info [facultatif] spécifie l'URL d'une page Web avec des informations supplémentaires sur la personne ayant mis en ligne la vidéo. Le domaine de cette URL doit être identique à celui de la balise <loc>.
<video:live>

Indique si la vidéo est diffusée en direct. Valeurs possibles :

  • yes : la vidéo est diffusée en direct.
  • no : la vidéo n'est pas diffusée en direct.
<video:tag>

Balise de chaîne arbitraire décrivant la vidéo. Les balises sont en général de courtes descriptions des concepts clés associés à une vidéo ou à une partie de contenu. Il est conseillé d'affecter plusieurs balises à une même vidéo, même si celle-ci n'appartient qu'à une seule catégorie. Par exemple, une vidéo sur les grillades peut appartenir à la catégorie "grillades" tout en étant associée aux balises "steak", "viande", "été" et "extérieur". Créez un élément <video:tag> pour chaque balise associée à une vidéo. Un maximum de 32 balises est autorisé.

Balises et attributs obsolètes

Nous avons supprimé les balises et attributs suivants de notre documentation : <video:category>, <video:gallery_loc>, attributs autoplay et allow_embed de la balise <video:player_loc>, balise <video:price> et ses attributs, ainsi que la balise <video:tvshow> et ses attributs. Pour en savoir plus, consultez l'annonce de l'abandon.

Alternative au sitemap : mRSS

Bien qu'il soit conseillé d'utiliser des sitemaps pour vidéos, nous acceptons également les flux mRSS.

Nous acceptons le module mRSS, qui complète les fonctionnalités des éléments RSS 2.0. Les flux mRSS sont très semblables aux sitemaps pour vidéos et peuvent être testés, envoyés et mis à jour de la même manière.

Pour en savoir plus sur les flux multimédias, consultez la documentation officielle sur les flux mRSS.

Exemple d'entrée mRSS

Voici un exemple d'entrée mRSS incluant toutes les balises utilisées par Google.

<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:media="http://search.yahoo.com/mrss/" xmlns:dcterms="http://purl.org/dc/terms/">
  <channel>
    <title>Example MRSS</title>
    <link>https://www.example.com/examples/mrss/</link>
    <description>MRSS Example</description>
    <item xmlns:media="http://search.yahoo.com/mrss/" xmlns:dcterms="http://purl.org/dc/terms/">
      <link>https://www.example.com/examples/mrss/example.html</link>
      <media:content url="https://www.example.com/examples/mrss/example.flv" fileSize="405321"
                        type="video/x-flv" height="240" width="320" duration="120" medium="video" isDefault="true">
        <media:player url="https://www.example.com/shows/example/video.swf?flash_params" />
        <media:title>Grilling Steaks for Summer</media:title>
        <media:description>Get perfectly done steaks every time</media:description>
        <media:thumbnail url="https://www.example.com/examples/mrss/example.png" height="120" width="160"/>
        <media:price price="19.99" currency="EUR" />
        <media:price type="subscription" />
      </media:content>
      <media:restriction relationship="allow" type="country">us ca</media:restriction>
      <dcterms:valid xmlns:dcterms="http://purl.org/dc/terms/">end=2020-10-15T00:00+01:00; scheme=W3C-DTF</dcterms:valid>
      <dcterms:type>live-video</dcterms:type>
    </item>
  </channel>
</rss>

référence mRSS

La spécification mRSS complète contient beaucoup plus de balises facultatives, de bonnes pratiques et d'exemples.

Pour que Google puisse utiliser votre flux mRSS, vous devez utiliser les balises obligatoires suivantes :

Balises obligatoires
<media:content>

Inclut des informations sur la vidéo.

Attributs :

  • medium : type de contenu. Définissez cet élément sur video.
  • url : URL directe du contenu vidéo brut. Si aucune valeur n'est spécifiée, vous devez indiquer la balise <media:player>.
  • L'attribut duration [facultatif, mais recommandé] détermine la durée de la vidéo en secondes.

Pour tous les autres attributs facultatifs et les champs enfants liés à la balise <media:content>, reportez-vous à la spécification mRSS.

<media:player>

Vous devez spécifier au moins l'une des valeurs suivantes dans <media:content> : <media:player> ou l'attribut url.

URL renvoyant vers un lecteur pour une vidéo spécifique. En général, cette information se trouve dans l'attribut src d'une balise <embed> et ne doit pas être identique au contenu de la balise <loc>. Il ne peut pas s'agir de la même URL que la balise <link>. La balise <link> doit renvoyer vers l'URL de la page qui héberge la vidéo, alors que cette balise doit rediriger vers un lecteur.

<media:title>

Titre de la vidéo. 100 caractères au maximum. Toutes les entités HTML doivent inclure un caractère d'échappement ou être encapsulées dans un bloc CDATA.

<media:description>

Description de la vidéo. 2 048 caractères maximum. Toutes les entités HTML doivent inclure un caractère d'échappement ou être encapsulées dans un bloc CDATA.

<media:thumbnail> URL renvoyant vers une vignette d'aperçu. Respectez les exigences spécifiques aux miniatures des vidéos.

De plus, les balises facultatives suivantes peuvent aider Google à mieux comprendre vos vidéos et leurs propriétés :

Balises facultatives
<dcterms:valid>

Date de publication et d'expiration de la vidéo. Voici la spécification complète de la balise dcterms:valid.

Exemple :

<dcterms:valid>
start=2002-10-13T09:00+01:00;
end=2002-10-17T17:00+01:00;
scheme=W3C-DTF
<dcterms:valid>
<media:restriction>

Liste des pays dans lesquels la vidéo peut être lue ou non, délimitée par des espaces, au format ISO 3166. Si la balise <media:restriction> est absente, Google considère que la vidéo peut être regardée dans tous les pays.

Attributs :

Si la balise parent <media:restriction> est utilisée, les attributs suivants sont requis :

  • type : définissez l'attribut type sur country. Seuls des pays peuvent être spécifiés.
  • relationship : indique si la vidéo peut être lue ou non dans la liste des pays spécifiés. Valeurs autorisées :
    • allow : les pays listés sont autorisés, les autres non.
    • deny : les pays listés sont bloqués, les autres non.

En savoir plus sur l'utilisation des restrictions par pays

Exemple :

<media:restriction relationship="allow" type="country">us ca</media:restriction>
<media:price>

Prix à payer pour télécharger ou pour regarder la vidéo. N'utilisez pas cette balise pour les vidéos accessibles sans payer. Vous pouvez ajouter plusieurs éléments <media:price> (par exemple, pour indiquer le prix dans différentes devises ou plusieurs options d'achat).

Attributs :

Si la balise parent <media:price> est utilisée, les attributs suivants sont requis :

  • currency : devise au format ISO 4217.
  • type : option d'achat. Voici les valeurs possibles :
    • rent : la vidéo est disponible à la location.
    • purchase : la vidéo est disponible à l'achat.
    • package : la vidéo fait partie d'une offre groupée.
    • subscription : la vidéo est disponible avec un abonnement.

Ressources supplémentaires

Vous voulez en savoir plus ? Consultez les ressources suivantes :