動画サイトマップとサイトマップの代わり

動画サイトマップとは、ページ上でホストされる動画に関する追加情報を含むサイトマップです。動画サイトマップを作成すると、サイト上の動画コンテンツを Google が発見して理解するうえで大きな助けとなります。特に、最近追加されたコンテンツや、通常のクロール メカニズムでは検出されない可能性のあるコンテンツに有効です。

Google は動画サイトマップの使用を推奨していますが、mRSS フィードもサポートしています。

動画サイトマップのベスト プラクティス

動画サイトマップは一般的なサイトマップが基になっているため、一般的なサイトマップに関するベスト プラクティスが動画サイトマップにも当てはまります。ご自身の都合に合わせて、動画専用の別個のサイトマップまたは mRSS フィードを作成することも、既存のサイトマップ内に動画サイトマップのタグを追加することもできます。

さらに、動画サイトマップには特別に次の要件が適用されます。

  • ホストページのコンテンツと無関係な動画はリストしないでください。たとえば、ページを少しだけ補足する動画や、主要なテキスト コンテンツと関係のない動画などです。
  • 動画サイトマップで参照されているすべてのファイルは、Googlebot によるアクセスが可能でなければなりません。つまり、動画サイトマップ内のすべての URL は次の要件を満たす必要があります。
    • robots.txt ルールでクロールを禁止していない。
    • メタファイルなしで、ログインせずにアクセスできる。
    • ファイアウォールまたはそれに似たメカニズムによってブロックされていない。
    • サポートされているプロトコル(HTTP と FTP)でアクセスできる(ストリーミング プロトコルはサポートされていません)。

    <player_loc> URL または <content_loc> URL にある動画コンテンツにスパマーがアクセスすることを防ぎたい場合は、サーバーにアクセスする bot が本物の Googlebot かどうかを確認してください。

Google 検索での動画に関するその他のヒントについては、動画のベスト プラクティスをご覧ください。

動画サイトマップの例

次の例は、動画拡張機能を使った通常のサイトマップを示しています。単一の <url> タグにネストされた 2 つの動画エントリが含まれています。最初の <video> エントリには Google が使用できるすべてのタグが含まれており、2 番目のエントリには必須タグのみが含まれています。

<?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>

その他の例

次の例は、動画サイトマップに Vimeo 動画の埋め込みを追加する方法を示しています。

<?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>

次の例は、動画サイトマップに YouTube 動画の埋め込みを追加する方法を示しています。

<?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>

動画サイトマップ リファレンス

video タグは、動画サイトマップの名前空間 http://www.google.com/schemas/sitemap-video/1.1 で定義されます。

Google が動画サイトマップを使用できるようにするには、次の必須タグを使用する必要があります。

必須タグ
<video:video>

<loc> タグで指定されたページ上の 1 つの動画に関するすべての情報の親要素。ホストするページの各動画につき、1 つの <loc> タグに複数の <video:video> タグをネストして含めることができます。

<video:thumbnail_loc>

動画のサムネイル画像ファイルを指す URL。動画のサムネイルの要件を遵守してください。

<video:title>

動画のタイトル。HTML エンティティはすべてエスケープするか、CDATA ブロックでラップする必要があります。動画を埋め込むウェブページに表示する動画タイトルと一致させることをおすすめします。

<video:description>

動画の説明。最大 2,048 文字です。HTML エンティティはすべてエスケープするか、CDATA ブロックでラップする必要があります。動画を埋め込むウェブページに表示する説明と一致させることをおすすめしますが、一語一句同じにする必要はありません。

<video:content_loc>

実際の動画メディア ファイルを指す URL。このファイルは、サポートされている形式のいずれかにする必要があります。

その他のガイドライン

  • HTML と Flash はサポートされている形式ではありません。
  • <loc> タグとは異なる URL にする必要があります。
  • 構造化データ内の VideoObject.contentUrl に相当します。
  • ベスト プラクティス: コンテンツへのアクセスを制限し、なおかつクロールの対象にしたい場合は、Googlebot が本物かどうかを確認する方法を使用して、Googlebot がコンテンツにアクセスできるようにします。
<video:player_loc>

特定の動画のプレーヤーを指す URL。通常、この情報は <embed> タグの src 属性内にあります。

その他のガイドライン

  • <loc> URL とは異なる URL にする必要があります。
  • iframe 動画を使用して動画を埋め込むことができる Vimeo、YouTube、およびその他の動画ホスティング プラットフォームでは、video:content_loc ではなくこの値が使用されます。構造化データ内の VideoObject.embedUrl に相当します。
  • ベスト プラクティス: コンテンツへのアクセスを制限し、なおかつクロールの対象にしたい場合は、Googlebot が本物かどうかを確認する方法を使用して、Googlebot がコンテンツにアクセスできるようにします。

さらに、以下の省略可能なタグを使用すると、Google が動画とそのプロパティをより適切に把握できるようになります。

省略可能なタグ
<video:duration>

動画の再生時間(秒単位)。値の範囲は 128800(8 時間)です。

<video:expiration_date>

動画が利用できなくなる日付(W3C 形式)。動画に有効期限がない場合は、このタグを省略します。指定した場合、この日付以降に動画が Google 検索で表示されることはありません。同じ URL で動画を繰り返し使用する場合は、有効期限を新しい有効期限に更新します。

指定できる値は、完全な日付(YYYY-MM-DD)か、完全な日付に時、分、秒、タイムゾーンを加えた値(YYYY-MM-DDThh:mm:ss+TZD)です。

例: 2012-07-16T19:20:30+08:00

<video:rating>

動画の評価。指定できる値は、0.0(低)~5.0(高)の範囲の浮動小数点数です。

<video:view_count>

動画が再生された回数。

<video:publication_date>

動画を最初に公開した日付(W3C 形式)。指定できる値は、完全な日付(YYYY-MM-DD)か、完全な日付に時、分、秒、タイムゾーンを加えた値(YYYY-MM-DDThh:mm:ss+TZD)です。

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

<video:family_friendly>

セーフサーチで動画を利用できるかどうかを指定します。このタグを省略すると、セーフサーチがオンになっている場合に、動画を利用できます。

指定できる値:

  • yes: セーフサーチがオンになっている場合に、動画を利用できます。
  • no: セーフサーチがオフになっている場合にのみ、動画を利用できます。
<video:restriction>

特定の国で、検索結果内に動画を表示するかどうかを指定します。

ISO 3166 形式の国コードをスペースで区切ったリストを指定します。<video:restriction> タグは動画ごとに 1 つだけ使用できます。<video:restriction> タグが存在しない場合、動画はすべての地域で表示できると見なされます。このタグは検索結果にのみ効果を及ぼします。制限した地域のユーザーが検索以外の方法で動画を発見または再生することは阻止できません。詳しくは、国ごとの制限の適用に関する説明をご覧ください。

属性:

親タグ <video:restriction> を使用する場合は、次の属性が必要です。

  • relationship: 指定した国で動画を検索結果に表示することを許可するか拒否するかを指定します。指定できる値は次のとおりです。
    • allow: リストに含まれる国は許可され、含まれない国は拒否されます。
    • deny: リストに含まれる国は拒否され、含まれない国は許可されます。

例: 次の例では、動画はカナダとメキシコでのみ検索結果への表示が許可されます。

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

<video:platform>

指定したプラットフォーム タイプの検索結果で動画を表示するかどうかを指定します。プラットフォーム タイプをスペースで区切ったリストを指定します。このタグは、指定したデバイスタイプの検索結果にのみ効果を及ぼします。制限したプラットフォームでユーザーが動画を再生することは阻止できません。

<video:platform> タグは動画ごとに 1 つだけ表示できます。<video:platform> タグが存在しない場合、動画はすべてのプラットフォームで再生できると見なされます。詳しくは、プラットフォームごとの制限の適用に関する説明をご覧ください。

指定できる値:

  • web - デスクトップ パソコンやノートパソコンのブラウザ。
  • mobile - スマートフォンやタブレットなどのモバイル ブラウザ。
  • tv: Google TV デバイスやゲーム機などで使用できるテレビブラウザ。

属性:

親タグ <video:platform> を使用する場合は、次の属性が必要です。

  • relationship: 指定したプラットフォームで動画を制限するか許可するかを指定します。指定できる値は次のとおりです。
    • allow: 省略したプラットフォームが拒否されます。
    • deny: 省略したプラットフォームが許可されます。

例: 次の例では、ウェブまたはテレビのユーザーに対しては許可し、モバイル デバイスのユーザーに対しては拒否しています。
<video:platform relationship="allow">web tv</video:platform>

<video:requires_subscription>

動画を視聴するために登録が必要かどうかを指定します。指定できる値は次のとおりです。

  • yes: 登録が必要です。
  • no: 登録は不要です。
<video:uploader>

動画をアップロードした人の名前。ページごとに <video:uploader> を 1 つまで含めることができます。255 文字以内の文字列値を指定できます。

属性:

  • info(省略可): アップロードした人に関する追加情報が記載されたウェブページの URL を指定します。この URL は、<loc> タグと同じドメインに存在する必要があります。
<video:live>

動画がライブ ストリームかどうかを指定します。指定できる値は次のとおりです。

  • yes: 動画はライブ ストリームです。
  • no: 動画はライブ ストリームではありません。
<video:tag>

動画について説明する任意の文字列のタグ。通常は、動画コンテンツに関する主要なコンセプトの非常に短い説明です。1 つの動画に複数のタグを指定できますが、その動画に指定できるカテゴリは 1 つだけです。たとえば、バーベキューの動画には、カテゴリとして「バーベキュー」を指定し、タグとして「ステーキ」、「肉」、「夏」、「アウトドア」などを指定できます。動画に関連付けるタグごとに、新しい <video:tag> 要素を作成します。このタグは最大 32 個まで指定できます。

サポートが終了したタグと属性

次のタグと属性をドキュメントから削除しました: <video:category><video:gallery_loc><video:player_loc> タグの autoplay および allow_embed 属性、<video:price> タグとその属性、<video:tvshow> タグとその属性。詳しくは、サポート終了のお知らせをご覧ください。

サイトマップの代替: mRSS

Google は動画サイトマップの使用を推奨していますが、mRSS フィードもサポートしています。

mRSS は、RSS 2.0 の要素の機能を補完する RSS モジュールです。mRSS フィードは動画サイトマップとよく似ており、サイトマップと同様にテスト、送信、更新が可能です。

メディア フィードについて詳しくは、公式のメディア RSS のドキュメントをご覧ください。

mRSS の例

Google が使用するタグがすべて指定されている mRSS エントリの例を以下に示します。

<?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>

mRSS リファレンス

mRSS の完全な仕様には、上記以外の多数の省略可能なタグ、ベスト プラクティス、例が含まれています。

Google が mRSS フィードを検出できるようにするには、次の必須タグを使用する必要があります。

必須タグ
<media:content>

動画に関する情報。

属性:

  • medium: コンテンツのタイプ。video に設定します。
  • url: 未加工の動画コンテンツを直接指す URL。この属性を指定しない場合は、<media:player> タグを指定する必要があります。
  • duration(省略可だが推奨): 動画の長さ(秒単位)。

<media:content> タグのその他の省略可能な属性と子フィールドについては、mRSS の仕様をご覧ください。

<media:player>

<media:content> で、少なくとも 1 つの <media:player> または url 属性を指定する必要があります。

特定の動画のプレーヤーを指す URL。通常、この情報は <embed> タグの src 属性内にあります。<loc> タグの内容とは異なる URL にする必要があります。<link> タグと同じ URL は指定できません。<link> タグは動画をホストするページの URL を指しますが、このタグはプレーヤーを指します。

<media:title>

動画のタイトル。最大 100 文字です。HTML エンティティはすべてエスケープするか、CDATA ブロックでラップする必要があります。

<media:description>

動画の説明。最大 2,048 文字です。HTML エンティティはすべてエスケープするか、CDATA ブロックでラップする必要があります。

<media:thumbnail> プレビュー サムネイルを指す URL。動画のサムネイルの要件を遵守してください。

さらに、以下の省略可能なタグを使用すると、Google が動画とそのプロパティをより適切に把握できるようになります。

省略可能なタグ
<dcterms:valid>

動画の公開日と有効期限。dcterms:valid タグの完全な仕様をご確認ください。

例:

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

動画の再生を許可する国または許可しない国をスペースで区切ったリスト(ISO 3166 形式)。<media:restriction> タグが存在しない場合、動画はすべての国で再生できると見なされます。

属性:

親タグ <media:restriction> を使用する場合は、次の属性が必要です。

  • type: type 属性は country に設定します。国ごとの制限のみがサポートされています。
  • relationship: 指定したリストに含まれる国で動画の再生を許可するかどうかを指定します。指定できる値は次のとおりです。
    • allow: リストに含まれる国は許可され、含まれない国は拒否されます。
    • deny: リストに含まれる国は拒否され、含まれない国は許可されます。

詳しくは、国ごとの制限に関する説明をご覧ください。

例:

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

動画のダウンロードまたは視聴の料金。料金の支払いなしで利用できる動画には、このタグを使用しないでください。複数の <media:price> 要素をリストに含めることができます(たとえば、各種の通貨または購入オプションを指定する場合)。

属性:

親タグ <media:price> を使用する場合は、次の属性が必要です。

  • currency: ISO 4217 形式の通貨。
  • type: 購入オプション。指定できる値は次のとおりです。
    • rent: レンタルが可能な動画。
    • purchase: 購入が可能な動画。
    • package: セット販売に含まれる動画。
    • subscription: サブスクリプションで利用できる動画。

参考情報

詳しくは、次のリンクをご確認ください。