我应该如何处理具有多种尺寸/价格的产品的schema.org标记

时间:2011-12-28 09:19:47

标签: schema.org

在为我的一个cusomters在线商店实施schema.org标记时,我发现有点困难。我认为这是标记中缺少的选项。更好的offer和aggregateOffer可以正确处理这种情况 - 尽管我认为它很常见。

  • 一个产品的一页(让我们说它是一种身体乳液)
  • 身体乳液有3种尺寸,100,200和250ml
  • 每种尺寸基本上都有内部productId(BL100,BL200和BL250)以及每种尺寸的EAN(http://en.wikipedia.org/wiki/International_Article_Number_(EAN))。
  • 如何购买:进入产品页面,选择尺码,通过javascript更改价格,点击添加到图表

:如何正确标记多种尺寸和多种价格的ONE产品?

问题: http://schema.org/Product建议只有一个对我来说错误的productID。如果我添加三个优惠(http://schema.org/Offer),搜索引擎可能会认为,定价非常奇怪,因为同一产品有三种不同的优惠。

http://schema.org/AggregateOffer对我来说似乎不对。

感谢您的帮助。

7 个答案:

答案 0 :(得分:12)

我认为标记此特定方案的正确方法是在单个Offers内嵌套多个Product。要为每个商品添加其他信息,请使用IndividualProduct。我不是百分百肯定,但这似乎在谷歌结构化数据测试工具中运作良好。

看起来schema.org仍在使用标记产品的新方法进行更新。 schema.org项目从Good Relations电子商务产品词汇表中提取了大量结构。有关新词汇项的详细信息,请参阅E-commerce SEO Using Schema.org Just Got A Lot More Granular

假设我们要在网站上列出有关苏门答腊咖啡豆的信息。我们想要出售两种不同尺寸(12盎司和16盎司),每种尺寸都有不同的价格。但是,两种产品尺寸应该具有相同的图像(“只是咖啡豆”)和名称。结构看起来像:

Product (name, description, and image)
  aggregateRating
  Offer (price and priceCurrency)
    IndividualProduct (sku and weight)
  Offer (price and priceCurrency)
    IndividualProduct (sku and weight)

将以下内容复制并粘贴到Google的Structured Data Testing Tool中,以了解Google将如何解释HTML。

jsFiddle display

<article class="product" itemscope itemtype="http://schema.org/Product">
  <div class="images">
    <a href="images/product.jpg">
      <img alt="Sumatra Coffee Beans" itemprop="image" src="images/product.jpg">
    </a>
  </div>
  <div class="content">
    <header>
      <h1 itemprop="name">Sumatra Coffee Beans</h1>
    </header>
    <div class="code">
      <span class="label">Item Number:</span>
      <span itemprop="productID">sumatra-coffee</span>
    </div>
    <div itemprop="description">
      <p>Error 418</p>
    </div>
    <div class="reviews" itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating">
      <div class="details">
        Rated <span itemprop="ratingValue">4.5</span>/5
      </div>
      <div class="count">
        (<span itemprop="reviewCount">9</span> reviews)
      </div>
    </div>
    <div class="offer" itemprop="offers" itemscope itemtype="http://schema.org/Offer">
      <div itemprop="itemOffered" itemscope itemtype="http://schema.org/IndividualProduct">
        <span class="sku" itemprop="sku">scb-ov1</span>
        – (<span itemprop="weight">12 oz.</span>)
      </div>
      <div class="price">$<span itemprop="price">14.99<span></div>
      <meta content="USD" itemprop="priceCurrency">
    </div>
    <div class="offer" itemprop="offers" itemscope itemtype="http://schema.org/Offer">
      <div itemprop="itemOffered" itemscope itemtype="http://schema.org/IndividualProduct">
        <span class="sku" itemprop="sku">scb-ov2</span>
        – (<span itemprop="weight">16 oz.</span>)
      </div>
      <div class="price">$<span itemprop="price">20.99</span></div>
      <meta content="USD" itemprop="priceCurrency">
    </div>
  </div>
</article>

答案 1 :(得分:2)

我想我会有一个Product包含多个Offer,每个尺寸一个。当然,限制是它没有提供指定多个产品ID的正式方法,但也许你可以非正式地将它们放在Offer的Description或URL属性中。这不是一个合适的选择,但也许它足够接近。

另一种选择是加入Public Vocabs电子邮件列表(lists.w3.org/Archives/Public/public-vocabs),该列表声称它是“提供扩展,新类型或部署体验反馈的地方”现有词汇“(lists.w3.org/Archives/Public/public-vocabs/2011Oct/0162.html),并为您的问题提出解决方案。

答案 2 :(得分:0)

我建议稍微改变一下这个特定网页的思维方式。不要将此特定网页视为“产品”页面,而应将其视为“WebPage”类型。这个'WebPage'实际上包含三个不同的'产品',每个'产品'都有自己的'Offer'和他们自己的'productID'。当你说每个尺码都有它自己的EAN时,这对我来说是一个很大的指标,即每个尺码的价格/尺寸/ ID应该包含在内部,如果它是自己的'产品'div。

答案 3 :(得分:0)

这就是Google所说的:使用itemOffered正在销售的商品。通常,这包括嵌套产品,但它也可以包含其他项类型或自由文本。

答案 4 :(得分:0)

所有不同的变体都应该表示为具有单独Product s的单独Offer。使用Product的{​​{1}}和isSimilarTo属性将它们链接在一起。

参考:http://schema.org/Product

答案 5 :(得分:0)

考虑为产品使用“AggregateOffer”,而不是在每个优惠中将每个尺寸指定为不同的“itemOffer”

https://schema.org/itemOffered

<块引用>

虽然此定义中明确列出了几种常见的预期类型,但也可以使用其他类型。使用第二种类型(例如产品或产品的子类型)可以阐明要约的性质。

答案 6 :(得分:0)

我认为 ProductGroup 是关键。见https://schema.org/ProductGroup

我有一个类似的追求,我发现很难将谷歌对 xml 产品提要的建议与 schema.org 规范相匹配。问题是,该 Feed 应将每个 sku 作为单个 Feed 项目(每个鞋码单独)包含在内,但仍将它们作为不同尺寸的一种产品出售。我们的开发人员使用 AggregateOffer 将所有尺寸链接在一起,但规范不允许每个 offer 项目不同,甚至不允许包含 sku 字段。 产品似乎更适合这种情况。 sku 和 +size* 都是有效的,Product 的属性。不同的尺寸应该由 productGroup 链接。

在您的情况下,我会研究 ProductModel 以对多个 Product 选项进行分组,因为它允许 PropertyValue 字段。见https://schema.org/ProductModel