結構化資料通用指南
如要在 Google 搜尋結果中顯示複合式搜尋結果,結構化資料應遵循 Google 搜尋的內容政策 (其中包括垃圾內容政策)。此外,本頁面詳細說明瞭所有結構化資料適用的一般指南,您必須遵循這些指南,才能在 Google 搜尋結果顯示複合式搜尋結果。
如果您的網頁含有結構化資料問題,可能會受到人工判決處罰。如果網頁因結構化資料而受到人工判決處罰,就無法以複合式搜尋結果的形式呈現,但是這並不會影響網頁在 Google 網頁搜尋中的排名。如果想知道網頁是否受到人工判決處罰,請開啟 Search Console 中的人工判決處罰報告。
技術指南
如要測試網頁是否符合技術指南,您可以使用複合式搜尋結果測試和網址檢查工具,而後者能找出大部分的技術錯誤。
格式
我們支援以下三種格式,請在網頁中加入其中一種格式的標記,網頁才能符合顯示複合式搜尋結果的條件:
- JSON-LD (建議)
- 微資料
- RDFa
存取權
請勿透過 robots.txt、noindex
或任何其他存取權控管方法,禁止 Googlebot 存取您的結構化資料網頁。
品質指南
使用自動化工具測試是否符合這些指南並不容易,因此您必須自行檢查。 違反品質指南可能會導致語法正確的結構化資料無法在 Google 搜尋中顯示為複合式搜尋結果,或遭標記為垃圾內容。
內容
- 遵循 Google 網頁搜尋的垃圾內容政策。
- 提供最新資訊。如果具有時效性的內容已過時,就不會顯示為複合式搜尋結果。
- 提供您或您的使用者所產生的原創內容。
- 請勿為不相關或容易誤導使用者的內容加上標記,例如造假評論或與網頁主題無關的內容。
- 請勿使用結構化資料欺騙或誤導使用者;也不允許冒用任何個人或機構的身分,或針對擁有權、所屬機構或主要目的做出不實陳述。
- 結構化資料中的內容也必須符合個別功能指南載明的其他內容規範或政策。舉例來說,
JobPosting
結構化資料中的內容必須符合徵人啟事內容政策,練習題結構化資料的內容則須遵守練習題內容規範。
關聯性
結構化資料必須真實呈現網頁內容。以下舉例說明何謂「不具關聯性的資料」:
- 體育賽事即時串流網站將播送內容標示為當地活動。
- 木工網站將說明內容標示為食譜。
完整性
- 指定特定複合式搜尋結果類型的說明文件中列出的所有必要屬性。缺少必要屬性的項目不會顯示在複合式搜尋結果中。
- 您提供的建議屬性越完整,對使用者而言搜尋結果的品質越高。舉例來說,明確告知薪資的徵人啟事比未提供薪資資訊的職缺更吸引使用者;使用者也偏好具有實際使用者評論和星級評分的食譜 (請注意,不是由實際使用者給予的評論或評分,可能會導致人工判決處罰)。系統對複合式搜尋結果進行排名時會將額外資訊納入考量。
位置
- 如果說明文件沒有特別說明,請將結構化資料放置在相關網頁上。
- 如果您有多個網頁會顯示相同內容,則不只是標準網頁,建議您在所有重複網頁上都放置相同的結構化資料。
明確性
- 加上標記時,盡量使用由 schema.org 定義的最詳細適用類型和屬性名稱。
- 遵循特定複合式搜尋結果類型適用的說明文件中所有的其他指南。
圖片
- 指定圖片為結構化資料屬性時,請確認圖片與所在的網頁相關。舉例來說,如果您定義了
NewsArticle
的image
屬性,則圖片必須與該篇新聞報導相關。 - 結構化資料中指定的所有圖片網址都必須可供檢索和建立索引,否則 Google 搜尋就無法找到圖片,也無法將圖片顯示在搜尋結果網頁上。如要測試 Google 能否存取您的網址,請使用網址檢查工具。
單一網頁上有多個項目
「單一網頁上有多個項目」表示同個網頁中有一種以上的事物。舉例來說,同個網頁中可能包含一份食譜、一段示範該食譜的烹飪影片,以及可讓使用者找到該食譜的導覽標記資訊。您也能為使用者可見的所有資訊加上結構化資料標記,讓 Google 搜尋等搜尋引擎更容易理解網頁上的資訊。當您為網頁添加越多結構化資料標記,Google 搜尋越能清楚瞭解該網頁的內容,並以不同的搜尋功能顯示該網頁。
![同時顯示影片和評論的食譜複合式搜尋結果](https://developers-dot-devsite-v2-prod.appspot.com/static/search/docs/images/multiple-items-rich-result.png?authuser=6&hl=zh-tw)
無論您是對項目採用巢狀結構或是個別指定每個項目,Google 搜尋都能瞭解這個網頁上有多個項目:
- 巢狀結構:當網頁上有一個主要項目,而其他項目都歸類在這個主要項目之下時,就適合使用巢狀結構。在歸類相關項目 (例如含有影片和評論的食譜) 時,這種做法特別實用。
- 個別項目:當同一個網頁上每個項目都是獨立區塊時,就適合採用這種做法。
為求簡短,這些示例都已經過調整,其中並未包含相關功能的所有必要和建議屬性。如需完整示例,請參閱特定結構化資料類型的說明文件。
巢狀結構
以下示範具巢狀結構的結構化資料,其中 Recipe
為主要項目,而 aggregateRating
和 video
則以巢狀方式存在 Recipe
之中。
<html> <head> <title>How To Make Banana Bread</title> <script type="application/ld+json"> { "@context": "https://schema.org/", "@type": "Recipe", "name": "Banana Bread Recipe", "description": "The best banana bread recipe you'll ever find! Learn how to use up all those extra bananas.", "aggregateRating": { "@type": "AggregateRating", "ratingValue": "4.7", "ratingCount": "123" }, "video": { "@type": "VideoObject", "name": "How To Make Banana Bread", "description": "This is how you make banana bread, in 5 easy steps.", "contentUrl": "https://www.example.com/video123.mp4" } } </script> </head> <body> </body> </html>
個別項目
以下示範採用個別項目形式的結構化資料,其中有兩個不同的項目:Recipe
和 BreadcrumbList
。
<html> <head> <title>How To Make Banana Bread</title> <script type="application/ld+json"> [{ "@context": "https://schema.org/", "@type": "Recipe", "name": "Banana Bread Recipe", "description": "The best banana bread recipe you'll ever find! Learn how to use up all those extra bananas." }, { "@context": "https://schema.org", "@type": "BreadcrumbList", "itemListElement": [{ "@type": "ListItem", "position": 1, "name": "Recipes", "item": "https://example.com/recipes" },{ "@type": "ListItem", "position": 2, "name": "Bread recipes", "item": "https://example.com/recipes/bread-recipes" },{ "@type": "ListItem", "position": 3, "name": "How To Make Banana Bread" }] }] </script> </head> <body> </body> </html>
其他提示
- 為確保 Google 搜尋能夠解讀網頁的主要目的,請加入能反映該網頁內容重點的主要結構化資料類型。舉例來說,如果網頁的主要內容是食譜,除了影片和評論結構化資料之外,請務必也加入食譜結構化資料。這樣一來,該網頁才有機會顯示多種形式的搜尋結果 (食譜複合式搜尋結果、影片搜尋結果和評論摘錄)。如果網頁只有影片結構化資料,Google 搜尋就無法充分瞭解該網頁的內容,也就不會將網頁顯示為食譜複合式搜尋結果。
- 為確保網頁能完整呈現使用者看到的內容,所有結構化資料項目都必須完整無缺。舉例來說,如果您想要納入多則評論,請確保使用者可以在網頁上看到的所有評論,您都沒有缺漏。這是因為,使用者會預期自己在搜尋結果中看到的就是全部評論;如果您只標記了網頁中的部分評論,可能就會誤導使用者。