媒體資訊提供是 JSON 物件,內含一組實體,該目錄代表目錄中的媒體內容,例如電視影集、電影、歌曲、專輯等。新手上路流程的第一步是開始開發動態饋給。檔案準備就緒後,您必須使用其中一種支援的代管方法託管動態饋給,讓 Google 定期擷取這些內容。
動態饋給檔案格式規定
動態饋給檔案的規定如下:
- 動態饋給檔案的副檔名必須是
.json
。 - 不要加密您的動態饋給檔案。
以 UTF-8 編碼您的動態饋給檔案 (請檢查檔案編輯器設定)。
如果動態饋給檔案大於 1 GB (未壓縮),請將檔案分割成多個檔案。
建議您為每個實體類型建立檔案 (例如:
tvseries.json
、tvseasons.json
、tvepisodes.json
、movies.json
等)。- 如果這些檔案中含有超過 1 GB 的檔案,請將其實體分割成多個檔案 (例如
tvepisodes_01.json
、tvepisodes_02.json
等)。 - 只要檔案大小不超過 1 GB,單一檔案可以納入的實體數量就沒有限制。
- 如果這些檔案中含有超過 1 GB 的檔案,請將其實體分割成多個檔案 (例如
請根據 JSON 規格,確保檔案「沒有」BOM 編碼。如要檢查 Linux 作業系統,
hexdump file.json | head -n 1
不得以 0x00 開頭的BBEF
開頭。
動態饋給類型
正式版動態饋給
- 代表一組 JSON 動態饋給檔案,這些檔案代表您要在 Google 上發布的完整目錄。如需建立動態饋給,請參閱下一節的說明。
- 如果你是第一次與 Google 整合,才需要提供這個動態饋給。
- 在您向 Google 提交此資訊提供後,我們會進行多次分析及疊代,以便取得品質更高的列,從而擷取到的資訊量和正確性,直到最終擷取並啟動為止。
測試動態消息
- 有些用途需要擴充正式版動態饋給。以下列舉幾個這類情況:
- 擴充動態饋給以納入新的實體類型,而不是先前推出的實體類型。
- 擴充動態饋給,在大量地區推出大量的新實體/中繼資料。
- 將動態饋給擴展到新的平台類型。舉例來說,如果正式版的動態消息只在 Google 搜尋上推出,而您想要將產品擴展到 Google TV 上。
- 在這種情況下,必須提供測試環境動態饋給。這個動態饋給是正式版動態饋給的副本,只是含有其他中繼資料,例如新平台的深層連結、新語言代碼的中繼資料等。
- 與正式版動態饋給類似,我們會進行多次分析及反覆測試,以便達到更高的品質標準,所擷取的資訊量和資訊正確性。達到品質標準後,這個動態饋給會取代目前的正式版動態饋給,進而成為新的正式版動態饋給。
- 這個動態饋給可讓我們從初始推出中區分出初始啟動作業和執行其他必要測試,而不會影響正式版動態饋給。如此可確保使用者體驗不會中斷。
請與你的 Google 代表合作,闡述上述問題。
建立動態饋給檔案
建立動態饋給時,請遵循下列最佳做法:
-
建立包含所有目錄內容的動態饋給之前,建議您先建立一個只有少量實體的範例動態饋給。處理動態饋給時,您可能會遇到 問題。限制實體集的大小,就能更輕鬆地偵錯這些錯誤和警告。
-
我們提供多種工具,確保您的動態饋給符合相關規定。建議您使用這些工具來解決樣本動態饋給中的所有錯誤和警告。
-
確認您為少部分實體結構良好後,即可為整個目錄開發動態饋給。
建立動態饋給範例
- 從您的目錄中選取一個代表實體。請選擇實體結構合理的實體,但該類別在目錄中的實體仍是一般的。
- 使用資料動態饋給驗證工具檢查是否有語法錯誤和缺少必要屬性。(詳情請參閱下一節)。
含有單一
Movie
實體的動態饋給範例{ "@context": "http://schema.org", "@type": "DataFeed", "dateModified": "2018-07-20T00:44:51Z", "dataFeedElement": [ { "@context": ["http://schema.org", {"@language": "en"}], "@type": "Movie", "@id": "http://www.example.com/my_favorite_movie", "url": "http://www.example.com/my_favorite_movie", "name": "My Favorite Movie", "potentialAction": { "@type": "WatchAction", "target": { "@type": "EntryPoint", "urlTemplate": "http://www.example.com/my_favorite_movie?autoplay=true", "inLanguage": "en", "actionPlatform": [ "http://schema.org/DesktopWebPlatform", "http://schema.org/MobileWebPlatform", "http://schema.org/AndroidPlatform", "http://schema.org/AndroidTVPlatform", "http://schema.org/IOSPlatform", "http://schema.googleapis.com/GoogleVideoCast" ] }, "actionAccessibilityRequirement": { "@type": "ActionAccessSpecification", "category": "subscription", "requiresSubscription": { "@type": "MediaSubscription", "name": "Example Package", "commonTier": true, "@id": "[partner determined string]" }, "availabilityStarts": "2018-07-21T10:35:29Z", "availabilityEnds": "2019-10-21T10:35:29Z", "eligibleRegion": [ { "@type": "Country", "name": "US" }, { "@type": "Country", "name": "CA" } ] } }, "sameAs": "https://en.wikipedia.org/wiki/my_favorite_movie", "releasedEvent": { "@type": "PublicationEvent", "startDate": "2008-01-20", "location": { "@type": "Country", "name": "US" } }, "description": "This is my favorite movie.", "actor": [ { "@type": "Person", "name": "John Doe", "sameAs": "https://en.wikipedia.org/wiki/John_Doe" }, { "@type": "Person", "name": "Jane Doe", "sameAs": "https://en.wikipedia.org/wiki/Jane_Doe" } ], "identifier": [ { "@type": "PropertyValue", "propertyID": "IMDB_ID", "value": "tt0123456" } ] } ] }
驗證動態饋給範例
下列工具可協助您使用 Google 的媒體資訊提供結構化資料規格驗證範例資訊提供。
資料動態饋給驗證工具
資料動態饋給驗證工具一次可驗證一個實體。使用這項工具驗證目錄中的範例實體出現結構錯誤和常見內容錯誤。如要進一步瞭解這項工具,請按這裡。
JSON 結構定義驗證工具
JSON 結構定義驗證工具可以驗證動態饋給中的所有檔案。在動態饋給開發期間使用這項工具,以避免常見的結構錯誤。如要進一步瞭解這項工具,請按這裡。
建立正式版動態饋給
- 動態饋給範例中的所有錯誤和警告都解決後,請展開動態饋給以納入目錄中的所有實體。
- 經常使用資料動態饋給驗證工具來驗證動態饋給中的少量實體 (在工具中貼上大量實體可能會凍結網路瀏覽器)。比較動態饋給中的實體數量與目錄中的項目數量,確認動態饋給包含所有實體。