轮播界面

借助结构化数据,您可以让自己的富媒体搜索结果有资格显示在称为“轮播界面”的列表式显示界面中。轮播界面通常仅会在移动设备上显示,并且仅适用于特定的内容类型(如下所述)。如果您将轮播界面标记用于目前轮播界面格式不支持的内容类型,并不属于错误;相应信息仍可以显示,但不是显示在轮播界面中。

在某些情况下,即使网页不包含针对列表的结构化数据,Google 搜索也可能会将您的富媒体搜索结果显示在轮播界面中:例如,某个食谱可能会显示在食谱轮播界面中,而该界面中包含来自很多不同网站的搜索结果。

示例

下面是来自单个网站的一系列鸡肉食谱显示在轮播界面中:

显示食谱富媒体搜索结果的轮播界面

指南

除了标准的结构化数据指南外,以下指南同样适用于所有列表标记:

  • 列表中的所有项必须为同一类型,例如:ArticleRecipe
  • 用户可见文字必须与网页上的结构化数据中包含的信息类似。
  • 列表格式中的项将按 position 属性指定的顺序显示。
  • 目前,以下内容类型支持列表格式:食谱课程文章餐馆

您可以通过以下两种方式为结构化数据实现列表格式:

  • 摘要页面 + 多个完整详情页面
  • 一页全包式单一列表

摘要页面 + 多个完整详情页面

摘要页面中包含列表中每一项的简短说明,每个说明都指向一个单独的详情页面(该页面完全针对一项)。

摘要页面 详情页面
定义一个 ItemList,其中每个 ListItem 都只有 3 个属性:@type(设为“ListItem”)、position(在列表中的位置)和 url(相应项的完整详情所在页面的网址)。 定义适合相应列表类型的结构化数据元素。
best_dessert_recipes.html 的伪代码:

ItemList
  itemListElement: [
    {
      @type: ListItem
      position: 1
      url: http://example.com/coffee_cake.html
    },
    {
      @type: ListItem
      position:2
      url: http://example.com/apple_pie.html,
    },
    ... more recipes ...
  ]
coffee_cake.html 的伪代码:

@type: Recipe
name: Party Coffee Cake
author: George Smith
.... more properties ...

示例代码:

示例代码:

一页全包式单一列表

该列表中包含所有列表信息,其中包括每个项的完整内容(例如,各种松饼的食谱库,并且全都包含在一个网页中)。

单个页面
定义一个 ItemList,其中每个元素都是一个 ListItem,并且 item 属性填充了相应 schema.org 元素类型(例如,影片课程)的结构化数据。该页面应包含与每个 ListItem 元素对应的用户可见文字和锚。

best_dessert_recipes.html 的伪代码:


ItemList
  itemListElement: [
    {
      @type: ListItem
      position: 1
      item: {
        @type: Recipe
        url: http://example.com/big_list_of_recipes#recipe_1
        name: George's Cherry Pie
        author: George Smith
        ... all other required Recipe type properties ...}
    },
    {
      @type: ListItem
      position: 2
      item: {
        @type: Recipe
        url: http://example.com/big_list_of_recipes#recipe_2
        name: Party Coffee Cake
        author: Mary Stone
        ... all other required Recipe type properties ...}
    },
    ... more recipes ...
  ]
示例代码:

结构化数据类型定义

要指定列表,您必须定义一个包含至少两个 ListItemsItemList。要使您的内容能够显示为富媒体搜索结果,您必须为其添加必需的属性。您还可以添加建议的属性,以便添加更多与您的内容相关的信息,进而提供更好的用户体验。

ItemList

ItemList 是用于存放列表中所有元素的容器项。如果用在摘要页面上,列表中的所有网址必须指向同一网域中的不同网页。如果用在一页全包式列表中,所有网址都必须指向用于托管列表结构化数据的页面。

如需了解 ItemList 的完整定义,请访问 schema.org/ItemList

必需属性
itemListElement

ListItem

项列表。所有项都必须为同一类型。有关详情,请参阅 ListItem

ListItem

ListItem 包含列表中单个项的详细信息。

  • 如果是摘要页面,则 ListItem 应仅包含 typepositionurl 属性。
  • 如果是一页全包式列表,则 ListItem 应包含它描述的数据类型的所有其他 schema.org 属性(例如,RecipeCourse 对象)。

如需了解 ListItem 的完整定义,请访问 schema.org/ListItem

简单摘要列表中的项示例 (JSON-LD):

{
  "@type":"ListItem",
  "position":1,
  "url":"http://example.com/desserts/apple-pie"
}

一页全包式列表中的项示例 (JSON-LD):

{
  "@type": "ListItem",
  "position": 1,
  "item": {
    "@type": "Recipe",
    "url": "http://example.com/desserts/pies/#apple-pie",
    "name": "Apple Pie",
    "image": "https://example.com/300px-Apple_pie.jpg",
    "aggregateRating": {
      "@type": "AggregateRating",
      "ratingValue": "6",
      "reviewCount": "32"
    },
    "recipeYield": "8 servings",
    "recipeIngredient": [
      "Pastry crust for bottom and top",
      "1/2 cup unsalted butter",
      "3 tablespoons all-purpose flour",
      "1/4 cup water",
      "1/4 cup white sugar",
      "1/2 cup brown sugar",
      "10 cups peeled, chopped green apples"
    ], ... snip ...
  }
}
必需属性
item

Thing

仅用于一页全包式列表。必须为一页全包式列表指定此属性。 请勿为摘要页面添加此属性。为此对象填充以下值,以及所描述的特定结构化数据类型的所有成员:

  • item.name
  • item.url
  • 相应数据类型(例如文章图书)所需的所有其他属性(如 schema.org 中以及这些文档包含的规则中所述)。例如,对于列表中的图书,您需要提供 bookFormatisbn 属性;对于食谱,您需要提供 prepTimeimage 属性。
item.name

Text

该项的字符串名称,显示在呈现的库中。HTML 格式会被忽略。必须为一页全包式列表指定此属性。请勿为摘要页面添加此属性。

item.url

URL

完全限定网址 + 页面锚(指向页面上的相应项)。必须为一页全包式列表指定此属性。请勿为摘要页面添加此属性。网址必须指向当前页面,并且您必须在页面中靠近用户可见文字的位置添加 HTML 锚(<a> 标记,也可以是 nameid 值)。 示例https://example.org/recipes/pies#apple_pie

position

Integer

该项在轮播界面中的位置。这是一个从 1 开始递增的数字。

url

URL

仅用于摘要页面列表。必须为摘要页面指定此属性。请勿为一页全包式列表添加此属性。项详情页面的规范网址。列表中的所有网址都必须是独一无二的,但属于同一网域(与当前网页相同的网域或子网域/超级网域)。

发送以下问题的反馈:

此网页