"price: missing and required" 虽然使用了 PriceSpecification
"price: missing and required" although PriceSpecification is used
我正在尝试在我们的产品页面上实施 Schema.org,但在 Google's Testing Tool 中进行测试时出现与 Offer
相关的错误。错误说 price
是必需的,但我想因为我使用了 PriceSpecification
,所以我不需要指定 price
。
这里是错误:
这是我使用的 HTML+微数据的格式:
<div itemscope itemtype="http://schema.org/Product">
<img itemprop="image" src="https://kng.scene7.com/is/image/kng/1046-set?$prodpage$" />
<h1 itemprop="name">Waist Apron, 11 inch</h1>
Item# <span itemprop="mpn">1046</span>
<div itemprop="offers" itemscope itemtype="http://schema.org/Offer">
<link itemprop="availability" href="http://schema.org/InStock">
<meta itemprop="itemCondition" itemtype="http://schema.org/OfferItemCondition" content="http://schema.org/NewCondition">
<table>
<tbody>
<tr itemprop="priceSpecification" itemscope itemtype="http://schema.org/PriceSpecification">
<td itemprop="eligibleQuantity" itemscope itemtype="http://schema.org/QuantitativeValue">
1 - 11
<meta itemprop="value" content="1">
<meta itemprop="unitCode" content="C62">
</td>
<td>Each</td>
<td>
<meta itemprop="priceCurrency" content="USD">
<meta itemprop="maxPrice" content="3.49">
.49
</td>
</tr>
<tr itemprop="priceSpecification" itemscope itemtype="http://schema.org/PriceSpecification">
<td itemprop="eligibleQuantity" itemscope itemtype="http://schema.org/QuantitativeValue">
12 - 29
<meta itemprop="value" content="12">
<meta itemprop="unitCode" content="C62">
</td>
<td>Each</td>
<td>
<meta itemprop="priceCurrency" content="USD">
<meta itemprop="price" content="2.96">
.96
</td>
</tr>
<tr itemprop="priceSpecification" itemscope itemtype="http://schema.org/PriceSpecification">
<td itemprop="eligibleQuantity" itemscope itemtype="http://schema.org/QuantitativeValue">
30 - 59
<meta itemprop="value" content="30">
<meta itemprop="unitCode" content="C62">
</td>
<td>Each</td>
<td>
<meta itemprop="priceCurrency" content="USD">
<meta itemprop="price" content="2.63">
.63
</td>
</tr>
<tr itemprop="priceSpecification" itemscope itemtype="http://schema.org/PriceSpecification">
<td itemprop="eligibleQuantity" itemscope itemtype="http://schema.org/QuantitativeValue">
60 +
<meta itemprop="value" content="60">
<meta itemprop="unitCode" content="C62">
</td>
<td>Each</td>
<td>
<meta itemprop="priceCurrency" content="USD">
<meta itemprop="minPrice" content="2.44">
.44
</td>
</tr>
</tbody>
</table>
</div>
</div>
奇怪的是,如果我只是将 Offer
部分粘贴到测试工具中,它不会 return price
错误。
解决此问题的最佳方法是什么?
tl;dr:Schema.org的使用是合适的,但是Google似乎还不支持它(还)。
Google 的 Products Rich Snippet 文档将 price
列为必需的 属性。他们甚至没有提到 priceSpecification
属性.
所以根据他们的文档和测试工具,Google 似乎(还?)不支持指定 priceSpecification
→PriceSpecification
instead of a price
。
如果您只检查 Offer
,测试工具不会给出此错误的原因是 Google 没有仅使用 Offer
.[=28= 的标记功能]
您遇到的错误不是您的微数据或您使用 Schema.org 的实际错误,而是 Google 喜欢看到的显示丰富网页摘要的内容。
我正在尝试在我们的产品页面上实施 Schema.org,但在 Google's Testing Tool 中进行测试时出现与 Offer
相关的错误。错误说 price
是必需的,但我想因为我使用了 PriceSpecification
,所以我不需要指定 price
。
这里是错误:
这是我使用的 HTML+微数据的格式:
<div itemscope itemtype="http://schema.org/Product">
<img itemprop="image" src="https://kng.scene7.com/is/image/kng/1046-set?$prodpage$" />
<h1 itemprop="name">Waist Apron, 11 inch</h1>
Item# <span itemprop="mpn">1046</span>
<div itemprop="offers" itemscope itemtype="http://schema.org/Offer">
<link itemprop="availability" href="http://schema.org/InStock">
<meta itemprop="itemCondition" itemtype="http://schema.org/OfferItemCondition" content="http://schema.org/NewCondition">
<table>
<tbody>
<tr itemprop="priceSpecification" itemscope itemtype="http://schema.org/PriceSpecification">
<td itemprop="eligibleQuantity" itemscope itemtype="http://schema.org/QuantitativeValue">
1 - 11
<meta itemprop="value" content="1">
<meta itemprop="unitCode" content="C62">
</td>
<td>Each</td>
<td>
<meta itemprop="priceCurrency" content="USD">
<meta itemprop="maxPrice" content="3.49">
.49
</td>
</tr>
<tr itemprop="priceSpecification" itemscope itemtype="http://schema.org/PriceSpecification">
<td itemprop="eligibleQuantity" itemscope itemtype="http://schema.org/QuantitativeValue">
12 - 29
<meta itemprop="value" content="12">
<meta itemprop="unitCode" content="C62">
</td>
<td>Each</td>
<td>
<meta itemprop="priceCurrency" content="USD">
<meta itemprop="price" content="2.96">
.96
</td>
</tr>
<tr itemprop="priceSpecification" itemscope itemtype="http://schema.org/PriceSpecification">
<td itemprop="eligibleQuantity" itemscope itemtype="http://schema.org/QuantitativeValue">
30 - 59
<meta itemprop="value" content="30">
<meta itemprop="unitCode" content="C62">
</td>
<td>Each</td>
<td>
<meta itemprop="priceCurrency" content="USD">
<meta itemprop="price" content="2.63">
.63
</td>
</tr>
<tr itemprop="priceSpecification" itemscope itemtype="http://schema.org/PriceSpecification">
<td itemprop="eligibleQuantity" itemscope itemtype="http://schema.org/QuantitativeValue">
60 +
<meta itemprop="value" content="60">
<meta itemprop="unitCode" content="C62">
</td>
<td>Each</td>
<td>
<meta itemprop="priceCurrency" content="USD">
<meta itemprop="minPrice" content="2.44">
.44
</td>
</tr>
</tbody>
</table>
</div>
</div>
奇怪的是,如果我只是将 Offer
部分粘贴到测试工具中,它不会 return price
错误。
解决此问题的最佳方法是什么?
tl;dr:Schema.org的使用是合适的,但是Google似乎还不支持它(还)。
Google 的 Products Rich Snippet 文档将 price
列为必需的 属性。他们甚至没有提到 priceSpecification
属性.
所以根据他们的文档和测试工具,Google 似乎(还?)不支持指定 priceSpecification
→PriceSpecification
instead of a price
。
如果您只检查 Offer
,测试工具不会给出此错误的原因是 Google 没有仅使用 Offer
.[=28= 的标记功能]
您遇到的错误不是您的微数据或您使用 Schema.org 的实际错误,而是 Google 喜欢看到的显示丰富网页摘要的内容。