"错误:使用schema.org"不完整的微数据对于产品

时间:2014-12-15 22:26:04

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

我收到“警告:使用schema.org不完整的微数据”。使用Google结构化数据测试工具验证我的Prestashop 1.6项目时。

我包含产品的所有必填字段(https://support.google.com/webmasters/answer/146750?hl=en)。

我的代码:

<div itemscope itemtype="http://schema.org/Product">
<span itemprop="name">{$product->name}</span>
<span itemprop="description">{$product->description}</span>
<img itemprop="image" src="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'large_default')|escape:'html':'UTF-8'}" />
<span itemprop="offers" itemscope itemtype="http://schema.org/Offer">
<meta itemprop="priceCurrency" content="EUR" />
<br />
<span itemprop="price">{$product->getPrice(true, $smarty.const.NULL, 2)}</span></span>
</div>

Google测试工具的网址:http://www.google.com/webmasters/tools/richsnippets?q=http%3A%2F%2Fwww.decoracionna.es%2F

我需要添加什么才能正常工作?

编辑:

我发布了一个产品的html代码

<li class="ajax_block_product col-xs-12 col-sm-4 col-md-3 last-item-of-mobile-line">
 <div class="product-container" itemscope="" itemtype="http://schema.org/Product">
 <div class="left-block">
  <div class="product-image-container"> 
   <a class="product_img_link" href="http://www.decoracionna.es/350367-jarron-de-vidrio-frances-botella-grande.html" title="Jarrón de Vidrio Francés - Botella Grande" itemprop="url"> 
    <img class="replace-2x img-responsive" src="http://www.decoracionna.es/1721-home_default/jarron-de-vidrio-frances-botella-grande.jpg" alt="Jarrón de Vidrio Francés - Botella Grande" title="Jarrón de Vidrio Francés - Botella Grande" width="250" height="250" itemprop="image"> 
   </a>
   <div class="content_price" itemprop="offers" itemscope="" itemtype="http://schema.org/Offer"> 
    <span itemprop="price" class="price product-price"> 23,98 € </span>
    <meta itemprop="priceCurrency" content="0">
   </div> 
   <span class="new-box"></span>
  </div>
 </div>
 <div class="right-block">
  <h5 itemprop="name"> 
  <a class="product-name" href="http://www.decoracionna.es/350367-jarron-de-vidrio-frances-botella-grande.html" title="Jarrón de Vidrio Francés - Botella Grande" itemprop="url"> Jarrón de Vidrio Francés - Botella Grande </a>
  </h5>
  <p class="product-desc" itemprop="description"> Gastos de envío por Pedido: 8.80€</p>
  <div itemprop="offers" itemscope="" itemtype="http://schema.org/Offer" class="content_price"> 
   <span itemprop="price" class="price product-price"> 23,98 € </span>
   <meta itemprop="priceCurrency" content="0">
  </div>
  <div class="button-container"> 
   <a class="button ajax_add_to_cart_button btn btn-default" href="http://www.decoracionna.es/carro-de-la-compra?add=1&amp;id_product=350367&amp;" rel="nofollow" title="Añadir al carrito" data-id-product="350367"> 
    <span>Añadir al carrito</span> 
   </a> 
   <a itemprop="url" class="button lnk_view btn btn-default" href="http://www.decoracionna.es/350367-jarron-de-vidrio-frances-botella-grande.html" title="Ver">     
    <span>Más</span> 
   </a>
  </div>
  <div class="product-flags"></div> 
  <span itemprop="offers" itemscope="" itemtype="http://schema.org/Offer" class="availability">  
   <span class="available-now">
    <link itemprop="availability" href="http://schema.org/InStock">En stock 
   </span> 
  </span>
 </div>
</div>
</li>"

感谢您的回复。

1 个答案:

答案 0 :(得分:0)

您对Microdata和Schema.org的使用没有错。谷歌结构化数据测试工具只是抱怨&#34;您没有指定Google搜索显示其中一个Rich Snippets所需的所有属性。

罪魁祸首似乎是最后一个Offer

<span itemprop="offers" itemscope="" itemtype="http://schema.org/Offer">  
  <link itemprop="availability" href="http://schema.org/InStock">En stock 
</span>

如果您删除此内容,或者添加了price属性,则Google的SDTT不会再发出警告。

<span itemprop="offers" itemscope itemtype="http://schema.org/Offer">  
  <link itemprop="availability" href="http://schema.org/InStock">En stock 
  <span itemprop="price">10</span>
</span>

如果我正确理解了您的代码,那么此Offer似乎与之前的Offer(您指定price / priceCurrency)的提议大致相同。如果是这种情况,您应该将它们合并为一个项目。

<div itemprop="offers" itemscope itemtype="http://schema.org/Offer"> 
 <span itemprop="price">23,98</span> € <!-- I removed the currency symbol from the price property, and added the currency to the priceCurrency property -->
 <meta itemprop="priceCurrency" content="EUR">
 <link itemprop="availability" href="http://schema.org/InStock">En stock 
</div>