"empty" 级的面包屑列表

BreadcrumbList with "empty" level

如果我想跳过 URL 的第一级,使用 Schema.org 注释来注释面包屑的正确方法是什么?

示例:

URL:

/it/songs/wish-you-were-here

Google 的结果:

example.com > IT > Songs > Wish You Were Here

由于第一级只是语言指标,我的理想结果是:

example.com > Songs > Wish You Were Here

但我也可以忍受

example.com/it > Songs > Wish You Were Here

有什么方法可以实现这个结果吗?我宁愿不要玩太多,因为传播变化需要时间。

注解:

  {
    "@context": "http://schema.org",
    "@type": "BreadcrumbList",
    "itemListElement": [{
      "@type": "ListItem",
      "position": 1,
      "item": {
        "@id": "http://example.com/it",
        "name": "IT"
      }
    },{
      "@type": "ListItem",
      "position": 2,
      "item": {
        "@id": "http://example.com/it/songs",
        "name": "Songs"
      }
    },{
      "@type": "ListItem",
      "position": 3,
      "item": {
        "@id": "http://example.com/it/songs/wish-you-were-here",
        "name": "Wish you Were Here"
      }
    }]
  }

Google 没有在他们的 Breadcrumbs 页面上记录这一点,因此不清楚如何控制(如果有的话)。并非所有功能都可以用结构化数据控制。

指定主页的规范 URL(即,将语言标记作为第一个路径段)指定为第一个碎屑似乎很有意义。它表明它是 一个 碎屑,因此如果 Google 搜索将其显示为两个碎屑,他们似乎忽略了这方面的结构化数据。如果是这样,您可以尝试两种方法:

  • 提供 WebSite 项,为您的站点(即主页)提供 url 的规范 URL。 (比如 example for the Sitelinks Searchbox。)

    {
      "@type": "WebSite",
      "url": "https://example.com/it"
    }
    
  • 省略主页的碎屑。 (所有Google的examples都省略了。)

    {
      "@type": "ListItem",
      "position": 1,
      "item": {
        "@id": "http://example.com/it/songs",
        "name": "Songs"
      }
    }
    

(我会先尝试第一个。无论如何,拥有 WebSite 项通常是个好主意。)


关于您的 JSON-LD

请注意,您没有在 @id 值中使用绝对值 URL。

如果片段包含在 http://example.com/it/songs/wish-you-were-here 的页面中,面包屑中该页面的 @id 将是 http://example.com/it/songs/example.com/it/songs/wish-you-were-here,这可能不是您想要的。

所以要么使用/it/songs/wish-you-were-here要么http://example.com/it/songs/wish-you-were-here

(如果这不仅仅是您问题中的一个错误,您可能需要先修复它并等待一段时间,以检查这是否会改变 Google 搜索显示您的面包屑的方式。)