Google没有使用相同的URI ID在同一页面中正确合并微数据和json + ld

时间:2015-11-17 11:45:14

标签: schema.org microdata json-ld structured-data

我有一个带有“微数据”和“json + ld”代码的产品页面。这两个代码都引用了相同的@id URI对象(http://www.example.org/product#this),所以我希望“混合/合并”这两个属性,而结构化数据测试工具则显示2个“个别”产品...... / p>

1- Google是否支持在同一页面中使用两种语法? 2-这实现得好吗?我可以使用itemId为微数据将两个代码引用到同一个对象,将@id用于json + ld吗? 3-这会在结构数据索引方面损坏我的页面吗?

感谢

您可以在test tool

中使用此代码查看
<div itemscope itemtype="http://schema.org/Product" itemid="http://www.example.org/product#this">
    <a itemprop="url" href="http://www.example.org/product">
    <div itemprop="name"><strong>Product Name</strong></div></a>
    <div itemprop="description">Product Description</div>
    <div itemprop="brand" itemscope itemtype="http://schema.org/Organization"><span itemprop="name">Product Brand</span></div>
    <div itemprop="offers" itemscope itemtype="http://schema.org/Offer">        <span itemprop="price">100</span><link itemprop="itemCondition" href="http://schema.org/NewCondition" /> New</div>
</div>
<script type="application/ld+json">
{
  "@context": "http://schema.org/",
  "@id": "http://www.example.org/product#this",
  "name": "Product Name",
  "@type": "Product",
  "image": "http://www.example.com/anvil_executive.jpg",
  "mpn": "925872",
  "brand": {
    "@type": "Thing",
    "name": "ACME"
  },
  "offers": {
    "@type": "Offer",
    "priceCurrency": "USD",
    "price": "119.99",
    "itemCondition": "http://schema.org/UsedCondition",
    "availability": "http://schema.org/InStock"
  }
}
</script>

2 个答案:

答案 0 :(得分:3)

从技术上讲,合并来自两种不同语法(读取微数据和json-ld)的数据是可行的,而结构化数据Linter证实了这一点,但Google 支持它,这意味着属性不会不能合并(不会满足Rich Snippets的要求)。

我们最终获得了SEO世界中一些演员的最终确认,包括Dan BrickleyJarno van Driel

通常,您可以同时使用两种语法,但是您不会 ID组成的三元组细粒度合并,即纯RDF应用程序 可能会期望(Dan Brickley在Twitter,2020年1月14日,大胆的矿山

-

我认为@danbri已经很清楚了。高度怀疑您会得到 与其他Google员工的答案不同。 (Jarno van Driel于Twitter,2020年1月14日)

到目前为止,提出的解决方案是解析微数据并将其发布为JSON-LD。

答案 1 :(得分:2)

我的猜测是Google的结构化数据测试工具不支持不同的语法,因为它似乎可以使用相同的语法。但由于它们仍然正确显示URI(在两种情况下均为http://www.example.org/product#this),您可能会认为它只是工具的界面不会合并它们。
但是,据我所知,谷歌并没有提供支持这些主题URI的文档(但这并不一定意味着它们不支持它),所以对它们来说可能无关紧要。

如果使用http://linter.structured-data.org/,您的示例工作正常:它会创建包含两个品牌和两个商品的一个项目。