動画コンテンツをインデックス可能にする(SEO)

このトピックでは、動画コンテンツが検索エンジンによって適切にインデックスされるための方法について学びます。

インターネット検索エンジンは、エンドユーザーにインターネット上の情報へ迅速かつ簡単にアクセスする手段を提供します。インターネット上のコンテンツがますますマルチメディア化している現在、検索エンジンによってあなたのコンテンツが正しくインデックスされるようにすることが重要です。本トピックでは、動画コンテンツを SEO 対応させ、各種検索エンジン(Google、Yahoo、Microsoft)によってインデックスされるようにする方法の概要を紹介します。

検索エンジンのインデクサーがサイトを調査する際に探す標準ドキュメントとして「サイトマップ」と呼ばれるものがあります。このドキュメントは、サイト上で公開されているコンテンツ、そのメタデータ、およびそのコンテンツがサイトのどこにあるのかを簡潔に検索エンジンに伝えます。サイトマップは、標準仕様に従った XML ファイルです。

作成することができ、また作成すべきサイトマップには、次の2種類があります:

  • サイトマップ - www.google.com や search.yahoo.com のようなテキストベースの標準的な検索エンジンでコンテンツをインデックスするためのもの
  • 動画サイトマップ - video.google.com のようなメディア中心の検索エンジンでコンテンツをインデックスするためのもの

これらのサイトマップはどちらも、動画コンテンツに関するメタデータをインデックスし、エンドユーザーへのリンクを提供します。違いは、どこから インデックスするメタデータを取得するかと、どのように 検索結果にコンテンツが表示されるかにあります。

動画コンテンツに対する適切な SEO 戦略には、標準サイトマップと動画サイトマップの 両方 の作成が含まれます。優先順位としては、まず 標準サイトマップ を作成し、その後で 動画サイトマップ を作成するのが望ましいです。Brightcove の CMS API を使用すれば、スクリプトを記述して動画サイトマップを自動生成することができ、手動で作成する必要はありません。

また、Brightcove Learning Services では、CMS API を使用した動画サイトマップ生成用のサンプルアプリも提供しています。

サイトマップの作成および送信に関する詳細は、Google のドキュメント を参照してください。

標準サイトマップ

サイトマップは、www.sitemaps.org で定義されているサイトマップ仕様に従っています。サイトマップ ファイルの目的は、検索エンジンに対してサイト内の URL の一覧を提供することです。URL に関連付けられるその他の情報は、ページが最後に更新された日時と、ページの変更頻度のみです。このインデックスには、コンテンツに関するメタデータは含まれていないことに注意してください。サイトマップはページ単位であるため、ライブラリ内の 動画に固有のページ、つまり URL を持たせるモデルを構築する必要があります。これは、異なるクエリパラメーターをページに渡すことで、動的に動作とコンテンツを変更できる単一ページを用意することで実現できます。たとえば、https://www.example.com/video.html?videoId=123 のような URL を使用する場合、video.html ページは videoId クエリパラメーター(videoId=123)を検出し、ID 123 の動画情報を含むようにページの内容を変更してブラウザに返します。これは、サーバーサイドの処理でページが ID を検出し、Brightcove の CMS API を使用して動画のメタデータを取得し、それをページに書き込むことで実現します。または、動画が公開されている URL をカスタムフィールドに保存し、CMS API から取得する方法もあります。

サイトマップには、検索エンジンに対してコンテンツの変更頻度を伝える changefreq タグもあります。動画を頻繁に更新する場合は、その情報もタグやカスタムフィールドに記録し、CMS API がそれを返せるようにします。多くの動画はあまり更新されないため、そのような場合はタグの値を yearly に設定するか、このオプションタグを省略しても構いません。検索クローラーがこのタグをどれだけ重視しているかについては明確な証拠がないためです。

本記事では、サイト内にすべての動画コンテンツを再生するための単一のランディングページがあることを前提としています。ページに対してさまざまなクエリパラメーターを渡し、どの動画を再生し、どの動画のメタデータを表示するかを指定します。たとえば、特定の動画をプレーヤーで再生しながら、プレイリスト全体の内容を表示するページがあるとします。そのページには、表示するプレイリストのメタデータを bcpid クエリパラメーターで、プレーヤーで再生する動画を bcvid パラメーターで指定します。このようにして、すべてのプレイリストと動画ID の組み合わせごとに URL を作成する必要があります。

以下は、作成されるサイトマップの例です:

  
  <?xml version="1.0" encoding="UTF-8" ?>
   <urlset xmlns="https://www.sitemaps.org/schemas/sitemap/0.9">
     <url>
       <loc>https://www.example.com/video?bclid=345&bctid=123</loc>
       <lastmod>2015-01-01</lastmod>
       <changefreq>weekly</changefreq>
     </url>
     <url>
       <loc>https://www.example.com/video?bclid=12&bctid=544</loc>
       <lastmod>2015-03-01</lastmod>
     </url>
   </urlset>

サイトマップファイルを作成するには、CMS API リクエストを使用して Video Cloud アカウント内のプレイリストを順に処理し、各プレイリスト内の動画を順に処理するスクリプトを作成します。各プレイリストと動画の組み合わせごとに、スクリプトはサイトマップにエントリーを作成し、プレイリスト/動画の組み合わせに固有の URL を指定します。サイトマップ ファイルを作成したら、その sitemap.xml ファイルをウェブサーバーのルートディレクトリに配置します。たとえば、ドメインが www.example.com であれば、サイトマップファイルは https://www.example.com/sitemap.xml でアクセスできるようになります。さらに望ましいのは、サーバーサイド アプリケーションでこのファイルを自動生成し、ライブサイト上で随時更新することです。

動画サイトマップ

動画サイトマップは、標準的なサイトマップ ファイルとコンセプトは似ています。動画サイトマップ ファイルには、アカウント内の各動画ごとにエントリが作成されます。実際には、動画サイトマップはサイトマップのスキーマをベースとし、動画メタデータに特化した追加タグを含みます。

以下の表は、Google が動画サイトマップに求めている必須タグを示しています。

タグ 必須 説明
<loc> Y 動画のランディングページ(再生ページ、参照元ページ)を指定します。
<video:video> Y 動画に関するすべての情報を囲むタグです。
<video:thumbnail_loc> Y 動画のサムネイル画像ファイルの URL を指定します。
<video:title> Y 動画のタイトルです。
<video:description> Y 動画の説明文です。
<video:content_loc> 条件付き 実際の動画ファイルへの URL を指定します。注意:<video:player_loc> または <video:content_loc> のいずれかを必ず指定する必要があります。
<video:player_loc> 条件付き 特定の動画を再生するプレーヤーの URL を指定します。通常、これは <embed> タグの src 要素に含まれる情報であり、<loc> タグの内容とは異なる必要があります。注意:<video:player_loc> または <video:content_loc> のいずれかを必ず指定する必要があります。

サポートされているすべてのタグと詳細な説明については、Google のドキュメントを参照してください。

以下は動画サイトマップのサンプルです。

      <urlset xmlns="https://www.sitemaps.org/schemas/sitemap/0.9" xmlns:video="https://www.google.com/schemas/sitemap-video/1.1">
         <url>
           <loc>https://www.example.com/videos/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>Get perfectly done steaks every time</video:description>
             <video:content_loc>https://brightcove04.brightcove.com/22/20318290001/201510/2249/20318290001_4582301804001_4582289844001.mp4?pubId=20318290001&videoId=4582289844001</video:content_loc>
             <video:player_loc>https://players.brightcove.net/20318290001/default_default/index.html?videoId=4582289844001</video:player_loc>
             <video:duration>600</video:duration>
             <video:publication_date>2014-11-05T19:20:30+08:00.</video:publication_date>
             <video:tag>steak</video:tag>
             <video:tag>meat</video:tag>
             <video:tag>summer</video:tag>
             <video:family_friendly>yes</video:family_friendly>
           </video:video>
         </url>
       </urlset>
      

動画サイトマップを作成したら、こちらの手順に従って Google に送信できます。

Brightcove Gallery を使用すると、技術的なリソースを必要とせずに魅力的な動画体験を構築できます。Brightcove Gallery を使用して構築されたサイトでは、動画メタデータが自動的に動画サイトマップとしてコンパイルされます。詳しくは、ポータル エクスペリエンスの検索エンジン最適化設定の構成 をご覧ください。

マイクロ フォーマットによるコンテキストの追加

動画サイトマップに加えて、マイクロ フォーマットを使用することで、サイト上の動画コンテンツの視認性をさらに高めることができます。

HTMLタグはコンテンツをブラウザにどのように表示するかを伝えるものであり、コンテンツが「何であるか」についての情報は提供しません。サイトは構造化データ(通常はデータベースに保存)から生成されている可能性がありますが、その構造は HTML で整形されることで失われてしまいます。検索エンジンにとっては、サイト上のデータ構造を把握できることが有益です。

Web ページ上のコンテンツの種類を識別するためのスキーマ( HTML タグ)が定義されています。Bing、Google、Yahoo などの検索エンジンはこのマークアップを活用して検索結果の質を向上させています。

これらのスキーマ、つまりマイクロフォーマットは、Web ページ上のコンテンツを定義するためにマークアップに追加できる共通語彙の集合です。これらのタグの詳細は schema.org で確認できます。

メディアプレーヤーには、Brightcove では VideoObject スキーマの使用を推奨しています。

Brightcove は、マイクロ フォーマット データを含めたプレーヤー公開コードを生成するためのツールも提供しています。Video Schema Builder をご覧ください。

まとめ

動画コンテンツに対する完全な SEO 戦略には、標準サイトマップと動画サイトマップの両方を作成することが含まれます。これにより、さまざまな検索エンジンに対してコンテンツが正しくインデックスされ、ユーザーが発見しやすくなります。さらに、コンテンツは最も魅力的な形で検索結果に表示されます。本記事では、アカウント内の各動画に対して一意のURLを提供するアプローチと、検索エンジンがインデックスできるサイトマップファイルを生成するサンプルコードについて説明しました。