瞭解結構化資料的運作方式

Google 搜尋會盡力瞭解網頁內容。您可以在網頁上使用結構化資料,將網頁內容相關的明確線索提供給 Google,進而協助我們。 結構化資料是一種標準化格式,作用是提供網頁相關資訊以及將網頁內容歸類。舉例來說,食譜網頁上的材料、烹飪時間和溫度、熱量等皆屬於結構化資料。

Google 會利用從網路上找到的結構化資料來瞭解網頁內容,以及收集網路和全世界的資訊。舉例來說,食譜網頁可能會出現以下 JSON-LD 結構化資料程式碼片段,介紹食譜的名稱、作者以及其他詳細資料:

<html>
  <head>
    <title>Party Coffee Cake</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org/",
      "@type": "Recipe",
      "name": "Party Coffee Cake",
      "author": {
        "@type": "Person",
        "name": "Mary Stone"
      },
      "datePublished": "2018-03-10",
      "description": "This coffee cake is awesome and perfect for parties.",
      "prepTime": "PT20M"
    }
    </script>
  </head>
  <body>
  <h2>Party coffee cake recipe</h2>
  <p>
    This coffee cake is awesome and perfect for parties.
  </p>
  </body>
</html>

Google 搜尋也會使用結構化資料來提供特別的搜尋結果功能和強化項目。例如,當食譜網頁提供了有效的結構化資料,就可以顯示在圖片搜尋結果中,如下所示:

搜尋外觀

蘋果派食譜複合式搜尋結果。

結構化資料

<html>
  <head>
    <title>Apple Pie by Grandma</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org/",
      "@type": "Recipe",
      "name": "Apple Pie by Grandma",
      "author": "Elaine Smith",
      "image": "http://images.edge-generalmills.com/56459281-6fe6-4d9d-984f-385c9488d824.jpg",
      "description": "A classic apple pie.",
      "aggregateRating": {
        "@type": "AggregateRating",
        "ratingValue": "4.8",
        "reviewCount": "7462",
        "bestRating": "5",
        "worstRating": "1"
      },
      "prepTime": "PT30M",
      "totalTime": "PT1H30M",
      "recipeYield": "8",
      "nutrition": {
        "@type": "NutritionInformation",
        "calories": "512 calories"
      },
      "recipeIngredient": [
        "1 box refrigerated pie crusts, softened as directed on box",
        "6 cups thinly sliced, peeled apples (6 medium)"
      ]
    }
    </script>
  </head>
  <body>
  </body>
</html>

由於結構化資料會為食譜的各個元素加上標籤,因此使用者可以依據材料、熱量和烹飪時間等條件搜尋您的食譜。

結構化資料會使用該資訊適用的網頁內標記進行編碼。 網頁上的結構化資料應描述該網頁的內容。您不應只為了保留結構化資料而建立空白網頁,也不應為使用者無法瀏覽的資訊新增結構化資料,即使資訊正確無誤亦然。如要進一步瞭解技術和品質指南,請參閱結構化資料一般指南

結構化資料格式

這份說明文件旨在介紹結構化資料的必要屬性、建議屬性及選用屬性,並且說明這些屬性對 Google 搜尋所代表的特殊意義。雖然大部分的 Google 搜尋結構化資料都使用 schema.org 詞彙,但是針對 Google 搜尋的運作方式,developers.google.com 說明文件才是您最終的參考指南,請忽略 schema.org 的說明文件。例如,本文未提及的屬性或物件,表示這些並非 Google 搜尋的必要項目,即便 schema.org 說明文件將其標示為必要項目,也不具參考價值。

請務必在開發期間使用複合式搜尋結果測試檢驗您的結構化資料,並於部署完成後利用複合式搜尋結果狀態報告監控網頁的健康狀況,因為網頁可能會在部署完成後因範本或服務問題而毀損。

您的物件必須包含所有必要屬性,才能以進階顯示功能的形式顯示在 Google 搜尋中。一般而言,只要定義更多建議的功能,資訊就更有可能以進階顯示功能的形式呈現在搜尋結果中。 然而,更重要的是需提供少量但完整、準確的建議屬性,而非提供所有可能的建議屬性,但這些屬性卻不甚完整、格式錯誤或含有不正確的資料。

除了此處列出的屬性和物件之外,通常 Google 還可以使用 sameAs 屬性和其他 schema.org 結構化資料。若有需要,這些元素可能會被用於啟用未來的搜尋功能。

若無另行說明,Google 搜尋支援以下格式的結構化資料:

格式 說明和位置
JSON-LD* (建議) 這是一種嵌入在網頁標頭或內文 <script> 標記中的 JavaScript 表示法。由於標記不會與使用者可見的文字交錯,因此可透過更簡易的方式表達巢狀項目,例如 Country > PostalAddress > MusicVenue > Event。 此外,Google 能夠解讀以動態方式植入網頁內容的 JSON-LD 資料,例如透過 JavaScript 程式碼或內容管理系統中內嵌小工具所植入的資料
微資料 一種開放社群 HTML 規格,用於為結構化資料在 HTML 內容中建立巢狀結構。例如 RDFa 會使用 HTML 標籤屬性為您想要以結構化資料形式呈現的資源命名。通常用於網頁內文,但也可用於標題。
RDFa 一種 HTML5 擴充功能,透過引入與使用者可見內容對應的 HTML 標記屬性來支援連結資料,可用於您想要對搜尋引擎描述的使用者內容。RDFa 經常用於 HTML 網頁的標題和本文部分。

結構化資料指南

請務必遵循一般結構化資料指南和您結構化資料所屬類型的專屬指南,否則您的結構化資料可能會無法顯示在 Google 搜尋的複合式搜尋結果中。

建立、測試並發布您的結構化資料

請參閱我們推薦的結構化資料網頁建立流程