Google如何对待具有多个JSON-LD Schema.org块的网页?

时间:2018-11-28 00:25:46

标签: schema.org json-ld google-rich-snippets

Google之类的搜索引擎如何处理具有多个JSON-LD(Schema.org)块的网页?

例如,如果页面下面都有两个无冲突的script块,将会发生什么情况?

<script type="application/ld+json">
{   "@context":"http://schema.org",    
    "@type":"WebPage",
    "@id": "#123",
    "author": {
      "@type": "Person",
      "name": "Foo Bar"
    }
}
</script>
<script type="application/ld+json">
{   "@context":"http://schema.org",
    "@type":"WebPage",
    "@id": "#123",
    "text": "blah blah blah",
    "url":"pageurl"
  }
</script>

1 个答案:

答案 0 :(得分:1)

我们不知道Google搜索实际上如何对待它们,但是我们知道Google’s Structured Data Testing Tool如何处理这种情况。

相同URI

如果对象具有相同的URI(在JSON-LD中为@id),则它们相同。 Google的SDTT将显示一个条目,显示所有具有相同URI的对象的属性。因此,从SDTT的输出来看,Google似乎平等地对待这两种情况:

<script type="application/ld+json">
{   "@context":"http://schema.org",    
    "@type":"WebPage",
    "@id": "#123",
    "url":"pageurl",
    "text": "blah blah blah"
}
</script>
<script type="application/ld+json">
{   "@context":"http://schema.org",    
    "@type":"WebPage",
    "@id": "#123",
    "url":"pageurl"
}
</script>
<script type="application/ld+json">
{   "@context":"http://schema.org",
    "@type":"WebPage",
    "@id": "#123",
    "text": "blah blah blah"
}
</script>

Output in Google’s SDTT

不同(或没有)URI

默认假设是对象描述了不同的事物。但是,如果某些(通常是唯一的)属性具有相同的值(电话,地址,名称等),则Google搜索可能之类的使用者可以推断出这些对象描述的是同一件事-这不是标准化的,但是,以及是否/何时让消费者这样做没有记录。