Play 遊戲動作

總覽

本文將介紹適用於電玩遊戲的 Play 遊戲動作、列出結構定義需求,並詳細說明如何完成新手上路程序,以便推出這項功能。

Play 遊戲動作簡介

Play 遊戲動作的行動版
行動裝置上的 Play 遊戲動作圖片
Play Game Actions 的電腦版
電腦上的 Play 遊戲動作圖片

使用者可透過電玩遊戲的「玩遊戲」動作,直接在電腦或行動裝置的搜尋結果頁面 (SRP) 玩遊戲。使用者搜尋與至少一個 Play 遊戲動作相關聯的遊戲時,系統會在有條理的搜尋結果網頁 (OSRP) 的「總覽」分頁或知識面板中,顯示 Play 遊戲動作。這項功能適用於免費、訂閱或單次購買的遊戲,無論是試玩版或完整版皆可。你可以在電腦或行動裝置上透過雲端串流遊玩,也可以在電腦或遊戲主機上透過本機用戶端應用程式下載遊戲。

Play 遊戲動作是由動態饋給提供支援,其中包含遊戲目錄的詳細資料。 動態消息是包含實體集合的 JSON 物件。實體是 schema.org 物件,代表目錄中的遊戲,以及與遊戲相關聯的深層連結 (可串流播放試玩版、即時試玩版或完整版)。

如要讓 Google 取得動態消息,請將動態消息儲存在檔案中,並將檔案代管在 Google 可存取的位置。為確保內容為最新資訊,Google 會定期從代管位置擷取動態饋給檔案。

以下各節將詳細說明這些規定。

開始使用

如上一節所述,供應商的責任包括:

  • 瞭解建立動態饋給所需的資訊、資訊來源和可用性,以及資訊如何進入動態饋給。
  • 建立動態饋給,其中包含目錄中每個遊戲實體的必要詳細資料。
  • 將動態饋給託管在伺服器或雲端儲存空間服務中,並允許 Google 定期擷取動態饋給。
  • 回應並修正 Google 提出的問題。這些問題可能與品質有關,也可能與 JSON 檔案本身的結構有關。
  • 隨著目錄演變,動態消息也應隨時更新。
  • 確保動態消息品質在發布後仍維持不變。

讓我們詳細瞭解這些功能。

事前準備

建議您先花點時間瞭解 Play 遊戲動作中繼資料規定,並將所有必要資訊集中管理,再開始建立動態饋給。建議您在開始建立動態消息前,先完成下列事項:

  • 查看VideoGame 實體的中繼資料規定。
  • 收集中繼資料。
    • 請仔細查看必要強烈建議的屬性。Google 會使用這些屬性,比對動態饋給中的內容與 Google 資料庫中的內容。你提供的內容中繼資料越多,Google 就越能比對內容。

瞭解本說明文件中「作品」和「版本」的用法

  • 作品 (Work):指電玩遊戲的抽象概念。具體來說,作品的屬性包括名稱、開發人員、遊戲說明和發行商等中繼資料。
  • 版本:電玩遊戲的實際版本。具體來說,版本的屬性包括出版年份、平台名稱和深層連結等中繼資料。

以《古墓奇兵:暗影》為例,這是一部「作品」,而它曾出版過的每種變體都是一種版本,因此「古墓奇兵:暗影」這部作品可能會有 Stadia 版、PlayStation 版、Stadia 搶先體驗版等眾多版本。

雖然您可能無法立刻察覺其中差異,不過作品和版本的區別對動態饋給來說特別重要。VideoGame 實體有兩種:

  • VideoGame (Work) 是「頂層」的 VideoGame 實體:
    • exampleOfWork 是 VideoGame (Work) 的屬性,可指定一或多個 VideoGame (Edition) 例項。
    • 每個 VideoGame (Work) 至少須有一個 exampleOfWork VideoGame (Edition)。
  • VideoGame (Edition) 是「較低層級」的 VideoGame 實體。

請記得,一部作品可以有多個版本。建議您盡可能將這些版本集合在一起,這樣 Google 系統就能運用這款電玩遊戲的所有相關資訊,找到正確的遊戲,並呈現在搜尋結果中。

瞭解兩項重要屬性及其規定。在建立動態饋給 (下一個步驟) 前,請務必正確設定這些屬性。

標準網址 (url)

標準網址 (url) 可協助 Google 準確比對目錄中的內容與 Google 資料庫中的內容。

「所謂的『標準網址』,就是 Google 從網站的一組重複網頁中所選出的最具代表性網頁的網址。舉例來說,如果同一個網頁有多個網址,例如 example.com?dress=1234 和 example.com/dresses/1234,Google 便會選擇其中之一做為標準網址。(來源:整合重複的網址)

標準網址的規定如下:

  • url 須為全域唯一值。
  • url 必須包含 Google 可檢索的有效標準網址。

ID (@id)

ID (@id) 必須符合下列規定:

  • 在目錄中具有全域專屬性:
    • 舉例來說,請勿為兩款不同的電玩遊戲使用相同的 @id
  • 靜態:
    • 設定後即無法變更 @id
  • 統一資源識別碼 (URI) 格式:
    • 如果內容的本機 ID 不是 URI 格式,請在 ID 前面加上網域,以符合這項規定。舉例來說,如果內容的 ID 是 1234abc,網域是 https://example.com,則 @id 可以是 https://example.com/1234abc
    • @id 不一定要是有效網址,只要採用 URI 格式即可。
    • @id 中使用的網域 (例如 https://example.com) 必須由貴機構擁有。

由於實體的 url 符合所有識別碼條件 (即全域不重複、靜態且採用 URI 形式),因此建議您在適當情況下,將實體的 url 做為 @id

瞭解並找出深層連結需求

當使用者對內容啟動 Play 遊戲動作時,Google 會使用內容的深層連結,直接將使用者帶往應用程式或平台中的內容。請注意以下幾點:

  • 深層連結必須在指定的所有平台上開啟目標內容。不同平台可以有不同的深層連結。舉例來說,適用於電腦版網頁的深層連結,可能與適用於行動版網頁的深層連結不同。針對每款遊戲,檢查是否根據平台有不同的深層連結。
  • 深層連結可以包含參數 (&) 或錨點標記 (#)。
  • 如要確保內容可在 Google 多個平台 (搜尋、Google 助理和 Android TV) 上提供,必須使用深層連結。

由於實體的 url 符合所有識別碼的條件 (也就是全域不重複、靜態,且採用 URI 形式),因此我們建議您在適當情況下,使用實體的 url 做為 @id

平台 說明
http://schema.org/DesktopWebPlatform 在電腦網路瀏覽器上搜尋平台。
http://schema.org/MobileWebPlatform 行動網路瀏覽器上的搜尋平台。
http://schema.org/AndroidPlatform 在 Android 應用程式中搜尋平台。
http://schema.org/AndroidTVPlatform Android TV 應用程式中的 Android TV 平台。
http://schema.org/IOSPlatform 在 iOS 應用程式中搜尋平台。

找出目錄中遊戲的存取權規定:請自問下列問題,並確保可透過動態消息中的中繼資料找出答案。

  • 使用者是否需要登入應用程式或平台才能存取內容?
  • 使用者是否需要訂閱方案?
  • 使用者是否需要購買才能玩遊戲?
  • 存取條件會隨時間變更嗎?
  • 存取權需求是否取決於裝置位置?

如果您提供多個訂閱套裝組合供使用者購買,請瞭解commonTier,以及這項功能如何與 Google 整合。

付費牆類型

Play 遊戲動作目前僅支援下列付費牆類型

類別值 付費牆類型
nologinrequired 無須購買或登入。
free 使用者必須登入,但不需要付費訂閱。
subscription 使用者必須訂閱 Google Home Premium,存取權與訂閱方案無關。
subscription 使用者必須訂閱 Google Home Premium,存取權與訂閱方案無關。
purchase 購買後可無限期觀看。
rental 使用者可在購買後一段時間內存取這些內容。

建立動態饋給時,系統會使用這些類別值。此外,請注意,前表中的 rental 類別目前完全是選填項目,未來可能會在產品強化功能中支援。目前產品只會從動態饋給中採用 freenologinrequiredsubscriptionpurchase 類別值。

最後,快速瀏覽範例動態消息,瞭解最終結果。

瞭解上述內容,並確保有足夠的元資料來代表 (這些問題的) 答案,足以繼續進行動態饋給建立階段。

建立動態饋給

Play 遊戲動作動態饋給是 JSON 物件,內含代表目錄中電玩遊戲的實體集合。你必須以檔案或多個檔案的形式提供動態饋給,並將其託管在伺服器或雲端儲存服務上,供 Google 定期擷取。

遵循動態饋給的檔案大小、數量和格式規定

請遵守下列規定:

  • 所有動態饋給檔案都必須使用 .json 副檔名。
  • 確認檔案名稱不含空格。
  • 請勿加密動態饋給檔案。
  • 以 UTF-8 編碼格式儲存動態饋給檔案 (請檢查檔案編輯器設定)。 編碼圖片
  • 如果未壓縮的動態饋給檔案大於 1 GB,請將檔案分割為多個檔案。
    • 只要檔案大小不超過 1 GB,單一檔案可包含的實體數量,以及你提交給 Google 的動態饋給檔案數量,都沒有限制。
  • 請確保檔案編碼時沒有 BOM,如 JSON 規格所述。如要在 Linux 作業系統上驗證這項設定,hexdump file.json | head -n 1不得以位址 0x00BBEF 開頭。

遵循動態饋給內容規定

請務必遵守下列內容規定:

  • 動態饋給不得含有過時的實體。過時實體是指深層連結的 availabilityEnds 設定為過去日期的實體,或是您的網站已不再提供的實體。
  • 動態饋給所包含的所有深層連結 (例如 urlTemplate) 和所有網址 (例如 url),都必須是實際使用的網址。請勿使用品質確保用的網址、開發網址或任何其他非實際使用的網址。
  • 如上一節所述,所有網址 (例如 url) 都必須是標準網頁
  • 動態饋給中的每個實體都必須指定下列屬性:
    • 唯一識別碼:@id
    • 專屬網址:url
    • 專屬深層連結:urlTemplate

建立動態饋給時,建議您採取下列做法:

  • 詳細瞭解動態饋給的結構
  • 從範例動態饋給開始。
    • 從目錄中選取最多五個代表性實體。選擇結構合理複雜,但仍屬於目錄中典型實體的實體,並為該實體建立動態饋給。
  • 並傳送給指派的 Google 代表,以進行快速驗證。
  • 解決範例動態饋給中的所有錯誤後,請展開動態饋給,將目錄中的所有實體納入其中。
    • 如要確認動態饋給包含目錄中的所有實體,請比較動態饋給中的實體數量與目錄中的項目數量。

代管動態消息

準備好動態饋給檔案後,請將檔案代管於安全的位置。Google 會定期擷取動態饋給,確保你的內容皆為最新資訊。我們支援下列代管方法:

代管方法 驗證支援
Google Cloud Storage 授予 088794101-100000002-account@partnercontent.gserviceaccount.com Storage 物件檢視者權限
HTTPS 您必須分享使用者名稱 + 密碼,或 HTTP 用戶端憑證
SFTP 你必須分享密碼、金鑰 + 詞組,或兩者同時使用。
AWS S3 您必須分享 AWS S3 值區的金鑰 ID + 存取金鑰。

將動態饋給檔案上傳至主機系統後,請與 Play 遊戲動作團隊聯絡,以審查動態饋給檔案。

將動態饋給送審

動態饋給檔案代管完成後,請與指派的 Play 遊戲動作聯絡人聯絡,開始進行動態饋給審查程序。請務必在這次通訊中提供下列資訊:

  • 總覽/說明:請告知我們你分享的是動態饋給範本還是完整正式版動態饋給。如果分享範例動態饋給,請盡可能提供正式版動態饋給的預計到達時間。
  • 代管位置:動態饋給檔案的網址。
  • 代管驗證:如適用,請加入驗證憑證,讓 Google 從代管位置擷取動態饋給檔案。詳情請參閱「代管動態消息」。
  • 測試帳戶:測試帳戶可讓 Play 遊戲動作團隊存取應用程式或平台上的深層連結,以進行測試。如果動態饋給在多個平台都有實體,請為每個平台提供測試帳戶。
  • Icons:提交下列五個圖示。這些圖示會顯示在 Google 搜尋的 Play 遊戲動作旁。
類別 尺寸 (像素) 檔案大小 指南規範
在 Google 搜尋/Google Cast/其他裝置上使用遊戲動作
16x16 除了 112x112 像素的圖示外,所有圖示的檔案大小不得超過 1 KB。

112 x 112 像素圖示的檔案大小不得超過 3 KB。

您必須提供所有五種尺寸的圖示。

圖片必須符合下列規定:

  • PNG 檔案格式。
  • 圓形。
  • 透明背景。
  • 請確保圖片已消除鋸齒,且不會扭曲或像素化。
20x20
40x40
44x44
112x112

範例

範例圖示

動態饋給驗證的運作方式

動態饋給驗證分為兩個階段:

  • 結構驗證:
    • 這是驗證檢查的第一階段。
    • Google 會提供與 JSON 檔案結構相關的回饋。JSON 格式是否正確?動態饋給是否包含所有必要屬性和強烈建議屬性?提供的深層連結是否已根據動態消息規定加上註解?
    • 這個階段需要與 Google 進行多次討論,直到所有意見回饋都獲得解決為止。
  • 中繼資料比對:
    • 只有在動態饋給通過結構驗證階段後,才會開始這項程序,Google 也會在此時啟動與 Google 知識圖譜的對帳程序。
    • 在這個階段,我們會針對動態饋給中的中繼資料提供意見回饋。你必須解決所有問題,才能順利發布。舉例來說,這個階段的意見回饋可能會要求你修正遊戲名稱或發布日期。
    • 這個階段也需要與 Google 進行多次討論,直到所有意見回饋都獲得解決為止。

動態饋給接受條件

解決所有阻礙發布的問題,且 Google 認證中繼資料品質達到發布標準後,動態饋給即可發布。

視需要更新動態饋給

我們建議您每天更新動態饋給,不過最終還是要依您目錄的變更頻率而定。請留意下列情況和提示:

  • Google 搜尋不支援即時更新。
  • Google 搜尋每天都會擷取你的動態饋給,擷取到的內容通常會在兩天內編入索引 (推出時)。
  • 如果已可預見深層連結的供應時間會有所變化,請使用 availabilityStartsavailabilityEnds 設定確切的供應日期。
  • 如果目錄中已停止供應該實體,請從動態饋給中完整移除該實體。

參考資料

動態饋給結構總覽

Play 遊戲動作動態消息的結構如下:

playgame 動態消息圖表

資料動態饋給封裝

資料動態饋給封包是 Play 遊戲動作動態饋給中的頂層物件。這個物件包含 內容標記物件 (VideoGame (Work) 實體) 陣列,代表目錄中的所有電玩遊戲。

屬性 預期類型 說明
@context 網址 必填。設為 http://schema.org
@type 文字 必填。請設為 DataFeed
dateModified DateTime 必填。動態饋給上次修改的日期和時間,採 ISO 8601 格式 (包括時區)。
dataFeedElement Thing 的子類型 必填。遊戲目錄的實體。

範本

{
  "@context": "http://schema.org",
  "@type": "DataFeed",
  "dateModified": "2018-07-20T00:44:51Z",
  "dataFeedElement": [
    {  },
    {  },
    {  },
    ...
  ]
}
    

內容標記物件

內容標記物件代表目錄中的單一實體:VideoGame (Work)。這個物件包含內容的 ID 和標準網址,並透過中繼資料說明內容。VideoGame (Work) 的內容標記物件具有名為 exampleOfWork 的屬性,可將其連結至 VideoGame(Edition) 物件。這個 VideoGame(Edition) 可以包含 Action 標記物件陣列,讓內容與多個 Action 標記物件建立關聯。舉例來說,每個區域的內容可以有不同的動作標記物件。

動作標記物件

Action 標記物件會說明將使用者帶往遊戲的深層連結,以及遊戲所需的存取層級。這個物件是內容標記物件的屬性 (potentialAction)。如果是 Play 遊戲動作,請使用動作存取權規格物件指定存取權限制。

屬性 預期類型 說明
@type 文字 必填。一律設為 PlayGameAction
gameAvailabilityType GameAvailabilityEnumerationText 必填。指出與這項動作相關聯的遊戲內容類型,例如完整版或試玩版。可接受的值包括 DEMOFULL
additionalType 文字 必填。指出與這款遊戲相關聯的播放動作類型。可接受的值包括:
  • StreamingPlayAction - 表示遊戲可線上串流
  • DownloadPlayAction - 表示遊戲可供下載
target EntryPoint 必填目標物件,提供深層連結與各種 Google 平台的對應關係。
target.@type 文字 必填。一律設為 EntryPoint
target.urlTemplate 網址 必填深層連結:將使用者帶往應用程式或平台,並啟動遊戲播放。
target.inLanguage 文字 (選用) 影集原始語言,格式為 BCP 47
target.actionPlatform 文字 必填。對應至「urlTemplate」的平台。Play 遊戲動作支援下列值:
  • http://schema.org/DesktopWebPlatform
  • http://schema.org/MobileWebPlatform
  • http://schema.org/AndroidPlatform
  • http://schema.org/AndroidTVPlatform
  • http://schema.org/IOSPlatform

如要瞭解相關規定,請參閱「平台類型」。

actionAccessibilityRequirement ActionAccessSpecification 必填動作存取規格物件,說明內容的存取權需求。詳情請參閱「動作存取權規格屬性」。

範本

"potentialAction": {
  "@type": "PlayGameAction",
  "target": [
    {  },
    {  }
  ],
  "actionAccessibilityRequirement": [
    {  },
    {  }
  ]
}
    

目標

目標物件會提供深層連結與各種 Google 平台的對應關係。這個物件是「動作標記」物件的屬性 (target)。urlTemplate 屬性會擷取深層連結,actionPlatform 則會擷取支援深層連結的平台。

範例

"target": [
  {
    "@type": "EntryPoint",
    "urlTemplate": "http://www.example.com/game007?autoplay=true",
    "actionPlatform": [
      "http://schema.org/DesktopWebPlatform",
      "http://schema.org/AndroidPlatform",
      "http://schema.org/AndroidTVPlatform",
      "http://schema.org/IOSPlatform"
    ]
  },
  {
    "@type": "EntryPoint",
    "urlTemplate": "http://www.example.com/mobile/game007?autoplay=true",
    "actionPlatform": [
      "http://schema.org/MobileWebPlatform"
    ]
  }
]
    

動作存取權規格

「動作存取權規格」物件會根據區域和時間範圍,說明內容的存取權需求。這個物件是 動作標記物件的屬性 actionAccessibilityRequirement

包含兩個深層連結的目標範例

"target": [
  {
    "@type": "EntryPoint",
    "urlTemplate": "http://www.example.com/game007?autoplay=true",
    "actionPlatform": [
      "http://schema.org/DesktopWebPlatform",
      "http://schema.org/AndroidPlatform",
      "http://schema.org/AndroidTVPlatform",
      "http://schema.org/IOSPlatform"
    ]
  },
  {
    "@type": "EntryPoint",
    "urlTemplate": "http://www.example.com/mobile/game007?autoplay=true",
    "actionPlatform": [
      "http://schema.org/MobileWebPlatform"
    ]
  }
]
    

動作存取權規格

「動作存取權規格」物件會根據區域和時間範圍,說明內容的存取權需求。這個物件是動作標記物件的屬性 actionAccessibilityRequirement

屬性 預期類型 說明
actionAccessibilityRequirement.@type 文字 必填。一律設為 ActionAccessSpecification
actionAccessibilityRequirement.category 文字 必填。內容的存取條件。如要瞭解可接受的值和更多資訊,請參閱「付費牆類型」。

如果實體代表一組內容,您必須將類別設為內容的最低存取限制。舉例來說,如果遊戲可透過 nologinrequired 免付費存取,也可透過訂閱方案存取,請將類別設為 nologinrequired

actionAccessibilityRequirement.availabilityStarts 日期 必填。可執行動作的日期,採用 ISO 8601 格式 (包括時區)。日期可以設為未來的日期。
  • 必須等於或大於 availabilityStarts 後的 72 小時。
  • 如果內容發布後會一直提供,請將這個日期設為目前日期的 20 年後。

我們要求在availabilityStarts日期前至少七天,在動態饋給中提供相應實體。這有助於遊戲及時顯示在 Google 平台上。

actionAccessibilityRequirement.availabilityEnds 日期 必填。動作的截止日期,採 ISO 8601 格式 (包括時區)。日期可以設為未來的日期。
  • 必須等於或大於 availabilityStarts 後的 72 小時。
  • 如果內容發布後會一直提供,請將這個日期設為目前日期的 20 年後。

如要更新 availabilityEnds 日期,請務必在 availabilityEnds 日期前至少七天,在動態饋給中進行更新。這樣一來,遊戲就更有可能在 availabilityEnds當天從 Google 平台下架。

actionAccessibilityRequirement.eligibleRegion 國家/地區城市州/省GeoShape文字 必填。可觀看內容的地區。如果內容在全球推出,請使用特殊字串 EARTH。如要瞭解必要條件,請參閱「GeoShape 屬性」。
actionAccessibilityRequirement.ineligibleRegion 國家/地區城市州/省GeoShape文字 必要 (如適用)。內容受限的區域。如果內容在 eligibleRegion 內的所有地區都適用,就不必提供這項屬性。

如要瞭解必要條件,請參閱「GeoShape 屬性」。

actionAccessibilityRequirement.requiresSubscription MediaSubscription 必要 (如適用)。使用者存取內容所需的訂閱詳細資料。詳情請參閱「媒體訂閱屬性」。
  • 如果 categorysubscription,請提供這項屬性。
actionAccessibilityRequirement.expectsAcceptanceOf Offer 如果內容需要購買,則為必填。與內容相關聯的優惠詳細資料。請提供下列情況的價格資訊:
  • 一次性購買內容 (rentalpurchase)
  • 訂閱者須額外付費才能觀看的訂閱制內容 (subscription)

如果價格為 0.00,請完全移除 Offer 物件,並將 actionAccessibilityRequirement.category 設為 free。詳情請參閱「方案屬性」。

媒體訂閱規格

媒體訂閱物件會說明內容所需的訂閱詳細資料。 這個物件是「動作存取規格物件」的屬性 requiresSubscription

重要事項:如果 actionAccessibilityRequirement.categorysubscription,且訂閱方案提供多個套裝組合或層級,或支援加購項目,則必須提供這項資訊。如果訂閱方案只有一個等級,且可存取目錄中的所有內容,請省略此屬性。
屬性 預期類型 說明
requiresSubscription.@type 文字 必填。一律設為 MediaSubscription
requiresSubscription.@id 網址 必填。訂閱項目的專屬 ID。如果內容可透過不同訂閱方案存取,每個訂閱方案都必須有專屬 ID。
requiresSubscription.name 文字 必填。訂閱方案名稱。請注意以下事項:
  • 如果內容可透過不同訂閱方案存取,這個名稱必須與使用者驗證系統中的名稱相符。舉例來說,如果使用者可根據名為「Package 1」的訂閱方案存取內容,但驗證系統使用「PKG1」這個名稱,請使用「PKG1」。
requiresSubscription.sameAs 網址 (選用) 說明訂閱項目的頁面。
requiresSubscription.identifier 文字 如果 categorysubscriptioncommonTier 為 false,則為必要欄位。這個訂閱方案的專屬字串,代表可存取媒體目錄中的一組內容。
  • Google 建議您使用下列語法:網域名稱 + 冒號 (:) + 內容存取層級。範例:example.com:basic、example.com:premiumexample.com:sportsidentifier
requiresSubscription.commonTier 布林值 如果類別設為「訂閱」,則為必填。如要進一步瞭解 commonTier,請參閱一般層級規定說明文件。

優惠屬性

優惠物件會說明與內容相關的價格。這個物件是動作存取權規格物件的屬性 (expectsAcceptanceOf)。這項功能有兩個用途:

  • 提供遊戲的購買明細。針對這個用途,actionAccessibilityRequirement.category 應設為 purchase
  • 在遊戲特價時提供購買詳細資料。在此用途中,actionAccessibilityRequirement.category 應設為 purchase,且每個動作應提供兩項優惠,分別是定價詳細資料和特價詳細資料。

屬性 預期類型 說明
expectsAcceptanceOf.@type 文字 必要 - 一律設為 Offer
expectsAcceptanceOf.name 文字 選填 - 優惠名稱。
expectsAcceptanceOf.priceSpecification PriceSpecification 必要:與遊戲相關的價格詳細資料。
expectsAcceptanceOf.priceSpecification.@type 文字 必要 - 一律設為 UnitPriceSpecification
expectsAcceptanceOf.priceSpecification.price Number 必填 - 內容的購買價格。價格必須是正數,且不得為零。如果遊戲價格為 0.00,請將 actionAccessibilityRequirement.category 設為 `free`。
expectsAcceptanceOf.priceSpecification.priceCurrency 文字 必要 - 價格的幣別,採用三個英文字母組成的 ISO 4217 格式
expectsAcceptanceOf.priceSpecification.priceType PriceTypeEnumerationText 如適用則為必填 - 優惠中提供的價格類型。
如果 actionAccessibilityRequirement.category 設為 purchase,則這是必要屬性,且只能接受 2 個值:
  • https://schema.org/ListPrice - 代表遊戲的定價。
  • https://schema.org/SalePrice - 代表遊戲的特價 (通常為限時優惠)。

提供特價詳細資料時,必須同時提供 https://schema.org/ListPricehttps://schema.org/SalePrice
expectsAcceptanceOf.seller 機構組織 提供內容購買服務的機構。
expectsAcceptanceOf.seller.@type 文字 一律設為 Organization
expectsAcceptanceOf.seller.name 文字 賣家名稱。
expectsAcceptanceOf.seller.sameAs 網址 可識別賣家的網頁網址,例如賣家首頁。

針對每種支援的付費牆類型,以下範例會深入說明如何建立 actionAccessibilityObject

免費 (不需登入)

{
  "actionAccessibilityRequirement": {
    "@type": "ActionAccessSpecification",
    "category": "nologinrequired",
    "availabilityStarts": "2015-01-01T00:00Z",
    "availabilityEnds": "2015-12-31T00:00Z",
    "eligibleRegion": {
      "@type": "Country",
      "name": "US"
    }
  }
}

免費 (不需登入),但僅限一小時試用

{
  "actionAccessibilityRequirement": {
    "@type": "ActionAccessSpecification",
    "category": "nologinrequired",
    "availabilityStarts": "2015-01-01T00:00Z",
    "availabilityEnds": "2015-12-31T00:00Z",
    "eligibleRegion": {
      "@type": "Country",
      "name": "US"
    }
    "expectsAcceptanceOf": {
      "@type": "Offer",
      "eligibleDuration": 60
    }
  }
}

免費 (需要登入)

{
  "actionAccessibilityRequirement": {
    "@type": "ActionAccessSpecification",
    "category": "free",
    "availabilityStarts": "2015-01-01T00:00Z",
    "availabilityEnds": "2015-12-31T00:00Z",
    "eligibleRegion": {
      "@type": "Country",
      "name": "US"
    }
  }
}

一次性消費 (含特價)

{
  "actionAccessibilityRequirement": {
    "@type": "ActionAccessSpecification",
    "category": "purchase",
    "availabilityStarts": "2015-01-01T00:00Z",
    "availabilityEnds": "2015-12-31T00:00Z",
    "eligibleRegion": {
      "@type": "Country",
      "name": "US"
    },
    "expectsAcceptanceOf": [
      {
        "@type": "Offer",
        "name": "Original Price",
        "priceSpecification": {
          "@type": "UnitPriceSpecification",
          "price": 7.99
          "priceCurrency": "USD"
          "priceType": "https://schema.org/ListPrice"
        },
        "seller": {
          "@type": "Organization",
          "name": "Example",
          "sameAs": "http://www.example.com/"
          }
        },
        {
          "@type": "Offer",
          "name": "Sale Price",
          "priceSpecification": {
            "@type": "UnitPriceSpecification",
            "price": 4.99
            "priceCurrency": "USD"
            "priceType": "https://schema.org/SalePrice"
          },
          "seller": {
          "@type": "Organization",
          "name": "Example",
          "sameAs": "http://www.example.com/"
        }
      }
    ]
  }
}

一次性消費

{
  "actionAccessibilityRequirement": {
    "@type": "ActionAccessSpecification",
    "category": "purchase",
    "availabilityStarts": "2015-01-01T00:00Z",
    "availabilityEnds": "2015-12-31T00:00Z",
    "eligibleRegion": {
      "@type": "Country",
      "name": "US"
    },
    "expectsAcceptanceOf": {
      "@type": "Offer",
      "price": 7.99,
      "priceCurrency": "USD",
      "seller": {
        "@type": "Organization",
        "name": "Example",
        "sameAs": "http://www.example.com/"
      }
    }
  }
}

單一等級/多等級/加購訂閱方案

{
  "actionAccessibilityRequirement": {
    "@type": "ActionAccessSpecification",
    "category": "subscription",
    "availabilityStarts": "2015-01-01T00:00Z",
    "availabilityEnds": "2015-12-31T00:00Z",
    "requiresSubscription": {
        "@type": "MediaSubscription",
        "name": "Example Package",
        "commonTier": true,
        "@id": "http://www.example.com/example_package"
    },
    "eligibleRegion": {
      "@type": "Country",
      "name": "US"
    }
  }
}

分級訂閱和加購內容

以下說明分級訂閱和加購內容的套用方式:

  • 在單一級別訂閱模式中,服務供應商只有一個訂閱級別。所有訂閱者都能存取相同內容,不受訂閱方案限制。
  • 在分層訂閱模式中,服務供應商會提供多個訂閱層級,例如金級、銀級和銅級。訂閱較高層級方案的使用者可以存取所有較低層級的內容。不過,訂閱較低層級方案的使用者無法存取較高層級的內容。內容範例 1
  • 在加購內容訂閱模式中,服務供應商允許使用者擴充權益,並在基本訂閱方案中新增內容。使用者可以視需要新增任意數量的內容。 content example 2

實體的整體範本

以下是實體的整體範本範例:

範本

{
  "@context": "http://schema.org",
  "@type": "DataFeed",
  "dateModified": "2018-07-20T00:44:51Z",
  "dataFeedElement": [
    {  },
    {
       "@context": ["http://schema.org", {"@language": "en"}],
       "@type": "VideoGame",
       "@id": "http://www.example.com/game007",
       "url": "http://www.example.com/game007",
       "name": "Games Bond 007",
       "exampleOfWork": [
        {  },
        {
           "@type": "VideoGame",
            "@id": "http://www.example.com/game007Stadia",
            "url": "http://www.example.com/game007Stadia",
            "name": "Games Bond 007",
            // Other properties
           "potentialAction": [
              {  },
              {
                  "@type": "PlayGameAction",
                  "target": [
                  {  },
                  {  }
                  ],
                 "actionAccessibilityRequirement": [
                 {  },
                 {  }
                 ]
              }
          ],
    ...
    }
  ]
}

結構化資料類型定義

本節提供 VideoGame 實體類型的內容標記屬性詳細資料。您的內容必須包含下面列出的必要屬性,才能顯示在搜尋結果中。我們建議您加入高度建議的屬性,為內容增添更多相關資訊,提供更優質的使用者體驗,並協助我們與 Google 知識圖譜進行實體對帳。

VideoGame (Work) 規格表

屬性 預期類型 說明
@context 文字 必填。一律設為 ["http://schema.org", {"@language": "xx"}]
  • Where xx 值代表動態饋給中字串的語言。每個根實體內容的 @language 都必須設為適當的語言代碼,並採用 BCP 47 格式。舉例來說,如果語言設為西班牙文,即使字幕/配音語言為英文,系統也會假設名稱為西班牙文。
@type 文字 必填。一律設為 VideoGame
@id 網址 必填。URI 格式的內容 ID,例如 https://example.com/1234abc. @id,必須符合下列規定:
  • 目錄中全域不重複。
  • 靜態。即使遊戲的 url 屬性有所變更,這個 ID 也應固定,不會隨著時間而改變。系統會將這個值視為不透明字串,且不一定要是有效連結。
  • 格式為統一資源識別碼 (URI)。
  • 用於 @id 值的網域必須由貴機構所擁有。

由於實體的 url 符合識別碼的所有規定,因此建議您使用實體的 url 做為 @id。詳情請參閱「ID」一節。

url 網址 必填。內容的標準網址,Google 會使用這個網址,比對動態饋給中的內容與 Google 資料庫中的內容。url 必須符合下列規定:
  • url 須為全域唯一值。
  • url 必須包含 Google 可檢索的有效標準網址。

如要取得播放內容的深層連結,請改為查看 target 物件的 urlTemplate 屬性。

name 文字 遊戲名稱。
  • 使用陣列列出不同語言的名稱。詳情請參閱多個地區和語言範例。
  • 請注意,每個語言代碼 (語言和國家/地區的組合) 只能有一個名稱。
description 文字 強烈建議使用。遊戲簡介。字數上限為 300 個半形字元。
genre 文字 所有相關類型的排序清單。例如:["Action", "Role playing"]
image ImageObject 強烈建議使用。與遊戲相關的圖片。如要進一步瞭解 image 必須和選用的屬性,請參閱「圖片屬性」。
applicationCategory 文字 選填。軟體應用程式類型。將值設為 Game
exampleOfWork VideoGame 必填VideoGame 的版本。這個 VideoGame (版本) 實體也會攜帶深層連結詳細資料。詳情請參閱「VideoGame (Edition)」規格表
playMode TextGamePlayMode (選用) 指出遊戲是多人、合作還是單人模式。 遊戲可同時標示為多人、合作和單人遊戲。接受下列值:
  • SINGLE_PLAYER
  • LOCAL_MULTI_PLAYER
  • ONLINE_MULTI_PLAYER
  • LOCAL_COOP
  • ONLINE_COOP

VideoGame (Edition) 規格表

屬性 預期類型 說明
@type 文字 必填。一律設為 VideoGame
@id 網址 必填。URI 格式的內容 ID,例如 https://example.com/1234abc.@id,必須符合下列規定:
  • 目錄中全域不重複。
  • 靜態。即使遊戲的 url 屬性有所變更,這個 ID 也應固定,不會隨著時間而改變。系統會將這個值視為不透明字串,且不一定要是有效連結。
  • 格式為統一資源識別碼 (URI)。
  • 用於 @id 值的網域必須由貴機構所擁有。

由於實體的 url 符合識別碼的所有規定,因此建議您使用實體的 url 做為 @id。詳情請參閱「ID」一節。

url 網址 必填。內容的標準網址,Google 會使用這個網址,比對動態饋給中的內容與 Google 資料庫中的內容。url 必須符合下列規定:
  • url 須為全域唯一值。
  • url 必須包含 Google 可檢索的有效標準網址。

如要取得播放內容的深層連結,請改為查看 target 物件的 urlTemplate 屬性。

name 文字 遊戲名稱。
  • 使用陣列列出不同語言的名稱。詳情請參閱多個地區和語言範例。
  • 請注意,每個語言代碼 (語言和國家/地區的組合) 只能有一個名稱。
description 文字 強烈建議使用。遊戲簡介。字數上限為 300 個半形字元。
genre 文字 所有相關類型的排序清單。例如:["Action", "Role playing"]
image ImageObject 強烈建議使用。與遊戲相關的圖片。如要進一步瞭解 image 必須和選用的屬性,請參閱「圖片屬性」。
applicationCategory 文字 選填。軟體應用程式類型。將值設為 Game
playMode TextGamePlayMode (選用) 指出遊戲是多人、合作還是單人模式。 遊戲可同時標示為多人、合作和單人遊戲。接受下列值:
  • SINGLE_PLAYER
  • LOCAL_MULTI_PLAYER
  • ONLINE_MULTI_PLAYER
  • LOCAL_COOP
  • ONLINE_COOP
potentialAction PlayGameAction

必要 (如適用)。提供動作詳細資料的動作標記物件

使用陣列在多個區域中指定不同的深層連結。詳情請參閱多個地區和語言範例。

gameEdition 文字

必填。這個遊戲的版本。

以熱門遊戲「古墓奇兵:暗影」為例,這款遊戲提供四種版本:「克羅夫特版」、「標準版」、「數位豪華版」和「終極版」。

gamePlatform 文字 必填。用來玩電玩遊戲的平台或電子系統。
releasedEvent PublicationEvent 強烈建議PublicationEvent 用於指定發布商發布的原始 (全球或當地) 內容。
releasedEvent.@type 文字 必填。請務必將這個屬性設為 PublicationEvent
releasedEvent.Location 國家/地區 必填。與此發布活動相關聯的區域。

請使用 ISO 3166 國家/地區代碼。如要表示全球各地,請設為 EARTH

releasedEvent.startDate 日期時間 建議做法ExclusiveEvent 的必要欄位。實體發布的開始日期。
releasedEvent.endDate 日期時間 (選用) 這代表內容的權利到期日。
releasedEvent.publishedBy OrganizationPerson (選用) 發布這個實體的機構或個人。
contentRating 文字 成人遊戲必須提供,其他遊戲則強烈建議提供。整體內容分級。 如果內容分級是以文字字串的形式提供,系統接受以下兩種變體:
  • 評等機構名稱會加在評等前面,並以半形空格分隔。舉例來說,美國「娛樂軟體分級委員會」的「成熟」分級需要描述為 Entertainment Software Rating Board Mature
  • 值為 RATING NOT KNOWN (不區分大小寫),表示您不知道遊戲的評等。
publisher OrganizationPerson (選用) 發布這個實體的機構或個人。
contributor OrganizationPerson (選用) 這個實體的次要貢獻者。

圖片規格表

Play 遊戲動作會重複使用媒體動作結構定義,以擷取圖片需求。詳情請參閱圖片結構定義規格

請注意以下其他規定。

顯示比例和 contentAttributes 最低解析度 (以像素為單位)
16:9,經典海報 3840x2160
2:3,經典海報 1000x1500
4:3,經典海報 800x600
1:1,經典海報 600x600
3:4,經典海報 600x800
16:9、代表性背景 (建議) 或 sceneStill 3840x2160
2:3、代表性背景 [建議] 或 sceneStill 1000x1500
3:4、代表性背景 (建議) 或 sceneStill 600x800

格式要求

圖片大小、品質等格式規定如下:

  • 加入遊戲的最高解析度海報和 sceneStills
  • 圖片必須為 JPG、PNG 或 WebP 格式。
  • 圖片網址必須可供檢索和建立索引
  • 檔案大小不得超過 20 MB。
  • 我們偏好同時適用於 smallFormatlargeFormat 的圖片。
  • 圖片不得包含下列內容:

    • 圖片模糊不清、像素化、旋轉或畫質不佳。
    • 未授權或圖庫相片。
    • 裸露。
    • 非法內容。
  • 除了上表列出的圖片大小,您也可以加入其他大小。

範例

以下各節提供不同情境的範例動態饋給。

包含一個 VideoGame 實體的動態消息範例

以下是代表「Space Wars Made Up Game」遊戲的 VideoGame 實體範例。請注意,這個實體必須以 JSON 檔案中的資料動態饋給封裝,Google 才能看到。

{
   "@context": ["http://schema.org", {"@language": "en"}],
   "@type":"DataFeed",
   "dateModified":"2021-07-20T00:44:51Z",
   "dataFeedElement":[
      {
         "@context": ["http://schema.org", {"@language": "en"}],
         "@id":"https://www.examplegame.com/VideoGame007",
         "@type":"VideoGame",
         "url":"https://www.examplegame.com/games/VideoGame007",
         "name":"Space Wars Made Up Game",
         "description":"Space Wars offers an immersive RPG experience coupled with realistic gameplay.",
         "genre":[
            "Role playing"
         ],
         "applicationCategory":"Game",
         "publisher":{
            "name":"Made Up Media",
            "@id":"https://www.examplegame.com/uniuqe-id-org",
            "@type":"Organization"
         },
         "contributor":[
            {
               "roleName":"developer",
               "name":"Alpha Labs Man Made Studio",
               "@id":"https://www.studionice.com/uniuqe-id-alpha",
               "@type":"Organization"
            }
         ],
         "playMode":[
           "SINGLE_PLAYER", "LOCAL_MULTI_PLAYER", "ONLINE_MULTI_PLAYER", "LOCAL_COOP", "ONLINE_COOP"
         ],
         "image":[
            {
               "@context":"http://schema.org",
               "@type":"ImageObject",
               "name":"keyart_1X1_3X",
               "contentUrl":"https://lh3.googleusercontent.com/ept4",
               "copyrightHolder":{
                  "@type":"Organization",
                  "name":"Studio Nice"
               },
               "additionalProperty":[
                  {
                     "@type":"PropertyValue",
                     "name":"contentAttributes",
                     "value":[
                         "SMALLFORMAT", "LARGEFORMAT", "SCENESTILL", "CENTERED", "NOTITLE", "NOLOGO"
                     ]
                  }
               ]
            }
         ],
         "exampleOfWork":{
            "@id":"https://www.examplegame.com/VideoGame007/version/v3",
            "name":"Space Wars Made Up Game",
            "description":"Space Wars offers an immersive RPG experience coupled with realistic gameplay.",
            "gameEdition":"Early Access",
            "url":"https://www.examplegame.com/VideoGame007/version/v3/stream",
            "contentRating":[
               "Entertainment Software Rating Board Mature",
               "Pan European Game Information 12",
               "Unterhaltungssoftware Selbstkontrolle Video Game Rating System USK 12"
            ],
            "applicationCategory":"Game",
            "releasedEvent":[
               {
                  "@type":"PublicationEvent",
                  "startDate":"2020-11-30",
                  "location":{
                     "@type":"Country",
                     "name":"US"
                  }
               }
            ],
            "potentialAction":{
               "@type":"PlayGameAction",
               "gameAvailabilityType":"DEMO",
               "target":[
                  {
                     "@type":"EntryPoint",
                     "urlTemplate":"https://www.examplegame.com/VideoGame007/play",
                     "actionPlatform":[
                        "http://schema.org/DesktopWebPlatform",
                        "http://schema.org/MobileWebPlatform",
                        "http://schema.org/AndroidPlatform",
                        "http://schema.org/AndroidTVPlatform",
                        "http://schema.org/IOSPlatform"
                     ]
                  }
               ],
               "actionAccessibilityRequirement":[
                  {
                     "@type":"ActionAccessSpecification",
                     "availabilityStarts": "2015-01-01T00:00Z",
                     "availabilityEnds": "2015-12-31T00:00Z",
                     "eligibleRegion":{
                        "@type":"Country",
                        "name":[
                           "US"
                        ]
                     },
                     "category":"subscription",
                     "requiresSubscription":{
                        "@type":"MediaSubscription",
                        "name":"",
                        "@id":""
                     }
                  }
               ],
            },
            "gamePlatform": "Google Stadia",
            "publisher":{
               "name":"Made Up Media",
               "@id":"https://www.examplegame.com/uniuqe-id-org",
               "@type":"Organization"
            },
            "contributor":[
               {
                  "roleName":"developer",
                  "name":"Alpha Labs Man Made Studio",
                  "@id":"https://www.studionice.com/uniuqe-id-alpha",
                  "@type":"Organization"
               }
            ]
         }
      }
   ]
}

代表含有兩名遊戲角色的範例圖片

插圖:女子和鳥在田野中。
{
  "@context": [ "http://schema.org", { "@language": "en" } ],
  "@type": "VideoGame",
  "@id": "http://www.examplegame.com/videoGame1",
  "url": "http://www.examplegame.com/videoGame1",

  ...,

  "image": {
    "@context": "http://schema.org",
    "@type": "ImageObject",
    "name": "Mauren and Lord Wingflap!",
    "Keywords": "Mauren, Lord Wingflap the Destroyer",
    "contentUrl": "http://example.com/images/mountain-view.jpg",
    "character": [
      { "@type": "Person", "name": "Mauren" },
      { "@type": "Person", "name": "Lord Wingflap the Destoyer" }
    ],
    "copyrightHolder": {
      "@type": "Organization",
      "name": " ExampleOrganization Studios, Inc."
    },
    "inLanguage": "en-US",
    "audience": {
        "@type": "Audience",
        "geographicArea": [{"@type": "Country", "name": "US"},
                           {"@type": "Country", "name": "GB"}]
    },
    "additionalProperty": [
      {
        "@type": "PropertyValue",
        "name": "contentAttributes",
        "value": [ "iconic", "background", "rightCentered", "noTitle", "noLogo",
                   "noCopyright", "noMatte", "smallFormat", "largeFormat"]
      }
    ]
  }
}

處理多個區域和語言 (國際化)

VideoGame 實體可能支援多個地區和語言。

{
  "@context": ["http://schema.org", {"@language": "en"}],
  "@type": "VideoGame",
  "@id": "http://www.example.com/my_favorite_game",
  "url": "http://www.example.com/my_favorite_game",
  "name": [
    {
      "@language": "en-us",
      "@value": "My Favorite Game"
    },
    {
      "@language": "es-mx",
      "@value": "mi juego favorito"
    },
    {
      "@language": "ja-jp",
      "@value": "私のfavourite game"
    }
  ],
  "description": [
    {
      "@language": "en-us",
      "@value": "Jenny meets Paul."
    },
    {
      "@language": "es-mx",
      "@value": "Jenny conoce a paul."
    },
    {
      "@language": "ja-jp",
      "@value": "PaulとJennyが会う。"
    }
  ],
  "potentialAction": [
    {
      "@type": "PlayGameAction",
      "gameAvailabilityType": "DEMO",
      "additionalType": "DownloadPlayAction",
      "target": {
        "@type": "EntryPoint",
        "urlTemplate": "http://www.example.com/my_favorite_game?autoplay=true",
        "actionPlatform": [
          "http://schema.org/DesktopWebPlatform",
          "http://schema.org/MobileWebPlatform"
        ]
      }
      "actionAccessibilityRequirement": {
        "@type": "ActionAccessSpecification",
        "category": "purchase",
        "availabilityStarts": "2021-06-24T11:00:00Z",
        "availabilityEnds": "2041-06-24T11:00:00Z",
        "eligibleRegion": [
          {
            "@type": "Country",
            "name": "US"
          },
          {
            "@type": "Country",
            "name": "MX"
          }
        ]
      },
      "additionalProperty": [
        {
          "@type": "PropertyValue",
          "name": "contentLanguage",
          "value": [
            "en",
            "es"
          ]
        }
      ],
      "expectsAcceptanceOf": {
        "@type": "Offer",
        "priceSpecification": [
          {
            "@type": "UnitPriceSpecification",
            "price": 19.99,
            "priceCurrency": "USD",
            "priceType": "https://schema.org/ListPrice"
          },
          {
            "@type": "UnitPriceSpecification",
            "price": 360.00,
            "priceCurrency": "MXN",
            "priceType": "https://schema.org/ListPrice"
          }
        ],
        "seller": {
          "@type": "Organization",
          "name": "My Favorite Game Publisher"
        }
      }
    },
    {
      "@type": "PlayGameAction",
      "gameAvailabilityType": "DEMO",
      "additionalType": "DownloadPlayAction",
      "target": {
        "@type": "EntryPoint",
        "urlTemplate": "http://www.example.com/jp/my_favorite_game?autoplay=true",
        "actionPlatform": [
          "http://schema.org/DesktopWebPlatform",
          "http://schema.org/MobileWebPlatform"
        ]
      }
      "actionAccessibilityRequirement": {
        "@type": "ActionAccessSpecification",
        "category": "purchase",
        "availabilityStarts": "2021-07-24T11:00:00Z",
        "availabilityEnds": "2041-07-24T11:00:00Z",
        "eligibleRegion": [
          {
            "@type": "Country",
            "name": "JP"
          }
        ]
      },
      "additionalProperty": [
        {
          "@type": "PropertyValue",
          "name": "contentLanguage",
          "value": [
            "ja"
          ]
        }
      ],
      "expectsAcceptanceOf": {
        "@type": "Offer",
        "priceSpecification": [
          {
            "@type": "UnitPriceSpecification",
            "price": 2189,
            "priceCurrency": "JPY",
            "priceType": "https://schema.org/ListPrice"
          }
        ],
        "seller": {
          "@type": "Organization",
          "name": "My Favorite Game Publisher"
        }
      }
    }
  ],
  // Other properties...
}