"价格:缺失和必需"虽然使用了PriceSpecification

时间:2015-06-25 22:29:26

标签: schema.org microdata google-rich-snippets

我正在尝试在我们的产品页面上实施Schema.org,但在Google's Testing Tool进行测试时,我收到与Offer相关的错误消息。错误说price是必需的,但我想,因为我使用了PriceSpecification,所以我不需要指定price

这是错误:

  

Google Structured Data Testing Tool: Product: 1 Error: 'price: missing and required'

以下是我正在使用的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">
                        $3.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">
                        $2.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">
                        $2.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">
                        $2.44
                    </td>
                </tr>
            </tbody>
        </table>
    </div>
</div>

奇怪的是,如果我只是将Offer部分粘贴到测试工具中,它就不会返回price错误。

解决此问题的最佳方法是什么?

1 个答案:

答案 0 :(得分:0)

tl; dr :适当使用Schema.org,但Google似乎还不支持它。

Google的Products Rich Snippet列表price的文档作为必需属性。他们甚至没有提到priceSpecification财产。

因此,根据他们的文档和他们的测试工具,Google似乎不支持指定priceSpecificationPriceSpecification而不是price

如果您只检查Offer,则测试工具不会出现此错误的原因是Google没有仅使用Offer的标记功能。
你得到的错误并不是你的Microdata或你使用Schema.org的实际错误,而是谷歌喜欢看到的用于显示Rich Snippet的错误。