影片 Sitemap 和替代方案

影片 Sitemap 是一種 Sitemap,包含了網頁上代管影片的其他資訊。建立影片 Sitemap 能夠協助 Google 找到網站上的影片並正確解讀影片內容,是一項絕佳的做法,特別適合用於最近新增或是無法透過一般檢索機制找到的影片內容。Google 影片 Sitemap 是 Sitemap 標準的延伸。

Google 建議使用影片 Sitemap,不過也支援 mRSS 動態饋給

影片 Sitemap 指南

影片 Sitemap 的基本原則如下:

  • 您可以專為影片建立個別的 Sitemap,也可以在現有的 Sitemap 中嵌入影片 Sitemap,端視何種方法對您而言較為便利。
  • 單一網頁可代管多個影片。
  • Sitemap 中的每個項目皆為單一網頁的網址,而每個網頁可代管一或多部影片。每個 Sitemap 項目的結構如下:
          <url>
            <loc>https://example.com/mypage</loc>      <!-- URL of host page -->
            <video> ... information about video 1 ... </video>
            ... as many additional <video> entries as you need ...
          </url>
  • 請勿列出與代管網頁無關的影片。舉例來說,如果影片只是網頁的少許增補內容或與主要文字內容無關,請不要加入影片 Sitemap 中。
  • 影片 Sitemap 中的每個項目都包含一組由您提供的必要值、建議值或選用值。建議值和選用值可提供實用的中繼資料,讓 Google 強化您的影片搜尋結果,並提升影片出現在搜尋結果中的機率。如需 Sitemap 標記定義清單,請參閱這一節
  • 如果 Google 認為網頁文字比 Sitemap 中的資訊更實用,則可能會使用影片到達網頁上的文字,而非您在 Sitemap 中提供的文字。
  • Google 採用的索引演算法相當複雜,因此無法保證一定會為您的影片建立索引,也無法保證建立索引的時間。
  • 如果 Google 在您提供的網址上找不到影片內容,就會忽略該 Sitemap 項目。
  • 您提供的每個 Sitemap 檔案最多只能包含 50,000 個網址元素;如果您的影片數量超過 50,000 部,可提交多個 Sitemap 和一個 Sitemap 索引檔。您無法使用巢狀結構的 Sitemap 索引檔。提醒您,加入選用標記會增加檔案大小,即使影片數量尚未達到 50,000 部的上限,未壓縮時的檔案仍有可能超過 50 MB 的容量限制。
  • Google 必須能夠存取來源檔案或播放器,亦即檔案或播放器不得遭到 robots.txt 封鎖、要求登入,或是以其他方式導致 Googlebot 無法存取。我們不支援需要透過串流通訊協定下載原始檔的中繼檔案。
  • 所有檔案皆必須可供 Googlebot 存取。如要防範垃圾內容發布者存取位於 <player_loc><content_loc> 網址的影片內容,可以透過驗證確認存取伺服器的漫遊器確實是 Googlebot
  • 確認 robots.txt 檔案沒有封鎖各個 Sitemap 項目所包含的任何項目,包括代管網頁網址、影片網址及縮圖網址。如要進一步瞭解 robots.txt,請參閱這篇文章
  • Google 會驗證您為每部影片提供的資訊,確認是否與網站內容相符。如果不相符,Google 可能不會為影片建立索引。
  • 您可以在單一 Sitemap 上指定多個網站的網頁,不過,包括您的 Sitemap 所屬網站在內的所有網站,都必須在 Search Console 中通過驗證。進一步瞭解如何管理多個網站的 Sitemap
  • 瞭解如何將 Sitemap 提交給 Google。如有您的網站為大型網站,建議使用 Search Console API 提交 Sitemap。

Sitemap 範例

以下是使用單一網頁代管一部影片的影片 Sitemap 範例,其中包含 Google 使用的所有標記。

<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
        xmlns:video="http://www.google.com/schemas/sitemap-video/1.1">
   <url>
     <loc>http://www.example.com/videos/some_video_landing_page.html</loc>
     <video:video>
       <video:thumbnail_loc>http://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>
         http://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="http://www.example.com/users/grillymcgrillerson">GrillyMcGrillerson
       </video:uploader>
       <video:live>no</video:live>
     </video:video>
   </url>
</urlset>

XML 命名空間

以下為定義影片 Sitemap 標記的命名空間:

xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"

影片 Sitemap 標記定義

您可以在 rssboard.org 找到更多關於媒體 Sitemap 的說明文件。

必要的標記
<url> 您網站中單一代管網頁的上層標記。這項標記遵循基本 Sitemap 格式
<loc>

用於指定含有一或多部影片的特定代管網頁。當使用者在 Google 搜尋結果中點選影片時,系統就會將使用者導向這裡指定的網頁。這個網址在 Sitemap 中不能重複出現。這項標記遵循基本 Sitemap 格式

如果單一網頁含有多部影片,請針對該網頁建立單一 <loc> 標記,並為網頁上的每部影片各新增一個 <video> 子元素。

<video:video>

<loc> 標記指定的網頁中,單一影片所有資訊的上層元素。

<video:thumbnail_loc>

指向影片縮圖檔案的網址。請遵循影片縮圖規定

<video:title>

影片的標題,所有 HTML 項目都必須逸出,或者包含在 CDATA 區塊中。建議您讓這個值與網頁中顯示的影片標題相符。

<video:description>

影片說明,長度上限為 2048 個半形字元。所有 HTML 項目都必須逸出,或者包含在 CDATA 區塊中。這個值必須與網頁中顯示的說明相符,但不必完全一模一樣。

<video:content_loc>

指向實際影片媒體檔案的網址,檔案必須使用任一支援格式

其他規範

  • 系統不支援 HTML 和 Flash 格式。
  • 這個值不得與 <loc> 網址相同。
  • 這個標記相當於結構化資料中的 VideoObject.contentUrl
  • 最佳做法:如果您要限制其他人存取內容,但仍要讓 Google 進行檢索,請使用反向 DNS 查詢確保 Googlebot 可存取內容。
<video:player_loc>

這個網址會指向特定影片的播放器。一般來說,這是 <embed> 標記中 src 元素的資訊。

其他規範

  • 這個值不得與 <loc> 網址相同。
  • 如果是 YouTube 影片,請使用這個值,不要使用 video:content_loc。這個標記相當於結構化資料中的 VideoObject.embedUrl
  • 最佳做法:如果您要限制其他人存取內容,但仍要讓 Google 進行檢索,請使用反向 DNS 查詢確保 Googlebot 可存取內容。

屬性:

  • allow_embed:[選用] 指定 Google 是否能將影片嵌入搜尋結果。允許的值為 yesno
建議使用的標記
<video:duration>

影片的片長,以秒為單位。這個值必須介於 128800 (8 小時) 之間,含首尾值。

<video:expiration_date>

影片的到期日,採 W3C 格式。在該日期後,搜尋結果中就不會再顯示這部影片。如果影片不需設定有效期限,請略過這個標記。如有設定這項標記,Google 搜尋在指定日期之後就不會再顯示這部影片。

支援的值為完整日期 (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> 標記,如果沒有 <video:restriction> 標記,Google 會假設可以在所有地區播放影片。請注意,這個標記只會影響搜尋結果,無法防止使用者在受限制的地區透過其他方式找到或播放影片。進一步瞭解如何套用國家/地區限制

屬性:

  • relationship:[必要] 允許或拒絕指定國家/地區的搜尋結果顯示這部影片。支援的值為 allowdeny。如果設為 allow,代表允許在列出的國家/地區顯示影片,未列出的國家/地區將無法顯示影片;如果設為 deny,則代表拒絕在列出的國家/地區顯示影片,系統會在未列出的國家/地區顯示影片。

範例:這個範例僅允許在加拿大和墨西哥顯示該影片的搜尋結果。

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

<video:platform>

要在指定平台類型的搜尋結果中顯示或隱藏影片。這會是一份以空格分隔的平台類型清單。請注意,這個標記只會影響指定裝置類型的搜尋結果,無法防止使用者在遭到限制的平台上播放影片。

每部影片只能顯示一個 <video:platform> 標記。如果沒有 <video:platform> 標記,則 Google 會假設可以在所有平台播放影片。進一步瞭解如何套用平台限制

支援的值

  • web - 桌上型電腦和筆記型電腦上的傳統電腦瀏覽器。
  • mobile - 行動瀏覽器,例如手機或平板電腦上的瀏覽器。
  • tv - 電視瀏覽器,例如可透過 Google TV 裝置和遊戲主機使用的瀏覽器。

屬性:

  • relationship:[必要] 是否允許在指定平台上播放影片,支援的值為 allowdeny。如果設為 allow 值,任何未列出的平台將無法播放影片;如果設為 deny 值,任何未列出的平台都能夠播放影片。

範例:以下範例允許使用者透過電腦或電視播放影片,但禁止使用者透過行動裝置播放影片。
<video:platform relationship="allow">web tv</video:platform>

<video:price>

下載或觀看影片的價格。如果是免費影片,請略過這個標記。您可以列出多個 <video:price> 元素,用於指定多種貨幣、購買選項或解析度等。

屬性:

  • currency:[必要] 用於指定貨幣,採 ISO 4217 格式
  • type:[選用] 用於指定購買選項,支援的值為 rentown。如未指定,則採用預設值 own
  • resolution:[選用] 用於指定購買版本的解析度,支援的值為 hdsd
<video:requires_subscription>

指定是否必須訂閱才能觀看影片,包含付費或免費訂閱。允許的值為 yesno

<video:uploader>

影片上傳者的名稱。每部影片僅可使用一個 <video:uploader>,字串值的長度上限為 255 個半形字元。

屬性:

  • info:[選用] 用於指定某個網頁的網址,讓您透過該網頁提供上傳者的其他資訊。這個網址必須和 <loc> 標記位於相同網域。
<video:live>

指明影片是否為即時串流影片。支援的值為 yesno

<video:tag>

用於說明影片的任意字串標記,通常是一段簡短的敘述,用來說明影片或部分內容的主要概念。一部影片可以有多個標記,而且這些標記可能全都屬於同一類別。舉例來說,關於燒烤食物的影片屬於「燒烤」類別,但同時也可以加上「牛排」、「肉食」、「夏季」和「戶外」等標記。您可以為與影片相關的每個標記都建立一個新的 <video:tag> 元素,標記數量上限為 32 個。

<video:category>

用於簡要說明影片概略類別的字串,長度上限為 256 個半形字元。一般而言,「類別」是指內容在主題上的概略分類,通常一部影片只屬於一個類別。例如,介紹烹飪的網站可能會有「炙烤」、「烘烤」和「燒烤」等不同類別,而影片會屬於其中一個類別。

<video:gallery_loc>

目前未使用。

Sitemap 替代方案:mRSS

Google 建議您使用影片 Sitemap 和 schema.org 的 VideoObject 來標記影片,但我們也支援 mRSS 動態饋給。

Google 支援 mRSS,這種 RSS 模組可補強 RSS 2.0 的元素功能。mRSS 動態饋給和影片 Sitemap 很類似,而且可以像 Sitemap 一樣進行測試、提交及更新。

每個 mRSS 動態饋給的未壓縮檔案大小不得超過 50 MB,而且最多只能包含 50,000 個影片項目。如果未壓縮的檔案大小超過 50 MB,或是影片數量超過 50,000 部,則可提交多份 mRSS 動態饋給和一個 Sitemap 索引檔。Sitemap 索引可以包含 mRSS 動態饋給。

mRSS 範例

以下 mRSS 項目範例提供 Google 使用的「所有」重要標記,包括可讓您識別即時串流影片的 <dcterms:type>live-video</dcterms:type>

<?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>http://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>http://www.example.com/examples/mrss/example.html</link>
    <media:content url="http://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="http://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="http://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 規格,並提供其他選用標記、最佳做法和範例。建立 mRSS 動態饋給後即可進行提交,做法與提交影片 Sitemap 相同。

必要的標記
<media:content>

包含與影片相關的所有資訊。

屬性:

  • medium:[必要] 內容類型,請設為 video
  • url:[必要] 原始影片內容的直接網址。 如未指定,則必須指定 <media:player> 標記。
  • duration:[選用但建議使用] 影片長度,以秒為單位。

如要進一步瞭解 <media:content> 標記的所有其他選用屬性及子欄位,請參閱 mRSS 規格

<media:player>

您必須在 <media:content> 中至少指定一項 <media:player>url 屬性。

這個網址會指向特定影片的播放器。一般來說,這是 <embed> 標記中 src 元素的資訊,且不得與 <loc> 標記的內容相同,也不能與 <link> 標記的網址一樣。<link> 指向的是影片代管網頁的網址,而這個標記則指向播放器。

<media:title>

影片的標題,長度上限為 100 個半形字元。所有 HTML 項目都必須逸出,或者包含在 CDATA 區塊中。

<media:description>

影片說明,長度上限為 2048 個半形字元。所有 HTML 項目都必須逸出,或者包含在 CDATA 區塊中。

<media:thumbnail> 指向預覽縮圖的網址,請遵循影片縮圖規定
選用標記
<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> 標記,Google 會假設該影片可以在所有地域播放。

屬性:

  • type [必要] 將 type 屬性設為 country。因為目前僅支援設定國家/地區限制。
  • relationship [必要] 指定影片是否可在特定國家/地區清單中的地點播放。支援的值:
    • allow
    • deny

進一步瞭解如何使用國家/地區限制

範例:


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

下載或觀看影片的價格。如果是免費影片,請不要使用這個標記。您可以列出多個 <media:price> 元素,例如指定多種貨幣或購買選項。

屬性:

  • currency:[必要] 貨幣代碼,採 ISO 4217 格式
  • type:[必要] 購買選項,允許的值為 rentpurchasepackagesubscription