了解结构化数据的工作方式

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 搜索结果中出现时具有增强的显示效果。 不过,更重要的是要提供数量较少但完整无误的推荐属性,而不要尝试提供所有可能的建议属性,但是数据不够完整、格式有误或不够准确。

除了此处所述的属性和对象之外,Google 还可以广泛使用 sameAs 属性和其他 schema.org 结构化数据。其中的部分元素可用于实现未来发布的搜索功能(如果被视为有用)。

除非另有说明,否则 Google 搜索支持以下格式的结构化数据:

格式 说明和放置位置
JSON-LD*(推荐) 嵌在网页标头或正文的 <script> 标记中的 JavaScript 表示法。此标记不与用户可见文本交错显示,使得嵌套数据项更易于表达,例如,Event>MusicVenue>PostalAddress>Country。 此外,Google 可以读取通过 JavaScript 代码或内容管理系统中的嵌入式微件等动态注入网页内容的 JSON-LD 数据
微数据 一种开放社区 HTML 规范,用于在 HTML 内容中嵌套结构化数据。与 RDFa 一样,它会使用 HTML 标记属性为您想让以结构化数据形式显示的属性命名。它通常用在网页正文中,但也可用在标头中。
RDFa 一种 HTML5 扩展功能,通过引入与您要向搜索引擎描述的用户可见内容对应的 HTML 标记属性来支持关联的数据。RDFa 通常用在 HTML 网页的标头和主体部分中。

结构化数据指南

请务必遵循结构化数据常规指南以及任何与您所用的结构化数据类型相关的指南,否则您的结构化数据可能无法在 Google 搜索中显示为富媒体搜索结果。

构建、测试和发布结构化数据

请参阅我们推荐的结构化数据网页新建流程