Voilà le fichier propre que j'obtiens pour product-prices.tpl qui ne contient aucune erreur ni avertissement pour Google. Les avertissements courants comme le sku, le mpn, l'image, la marque, la date de validité du prix, l'url ou encore la disponibilité y sont corrigés. Il se peut que quelques avertissements persistent si vous utilisez des données particulières.
Il se peut aussi que les lignes concernant le review et l'aggregateRating fassent des erreurs d'affichage si vous avez modifié votre thème Classic de Prestashop (par le custom.css. Puisque même sans être affichés, ils prennent un espace fantôme qui décale l'affichage des vignettes quand vous avez transformé leur taille ou leur nombre par ligne). Modifiez à nouveau votre thème par le custom.css en conséquence ou enlever les lignes :
<div itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating" style="display:none">
<span itemprop="ratingValue">5</span>
<span itemprop="ratingCount">1</span>
et
<div itemprop="review" itemscope itemtype="http://schema.org/Review" style="display:none">
<span itemprop="author">{Configuration::get('PS_SHOP_NAME')}</span>,
<meta itemprop="datePublished" content="{'Y'|date}-{'m'|date}-{'d'|date}">
<div itemprop="reviewRating" itemscope itemtype="http://schema.org/Rating">
<meta itemprop="worstRating" content="1"/>
<span itemprop="ratingValue">5</span>/
<span itemprop="bestRating">5</span>
</div>
Si vous n'utilisez pas la notation, l’évaluation par les clients et leurs commentaires, c'est vraiment pas grave de les enlever.
Voici le code complet du fichier product-prices.tpl que j'obtiens (themes/classic/templates/catalog/partial/product-prices.tpl) à jour jusqu'à la version 1.7.6.5 et fonctionnant depuis la version 1.7.0.0 qui permet de corriger (a priori toutes) les erreurs et avertissements Google. N'oubliez jamais de sauvegarder vos fichiers avant tout changement. Et n'oubliez pas encore une fois de faire une sauvegarde de vos fichiers avant tout changement (l'ai-je assez dit). Pour bien vérifier, videz votre cache du navigateur (Ctrl+Up+Suppr., vider le cache) avant de réafficher votre page (Ctrl+R) et vérifier que tout va bien (sinon courez dans tous les sens et accusez le gouvernement! ) :
Quote{**
* 2007-2019 PrestaShop and Contributors
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License 3.0 (AFL-3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* https://opensource.org/licenses/AFL-3.0
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to [email protected] so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to https://www.prestashop.com for more information.
*
* @author PrestaShop SA <[email protected]>
* @copyright 2007-2019 PrestaShop SA and Contributors
* @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0)
* International Registered Trademark & Property of PrestaShop SA
*}
{if $product.show_price}
<div class="product-prices">
{block name='product_discount'}
{if $product.has_discount}
<div class="product-discount">
{hook h='displayProductPriceBlock' product=$product type="old_price"}
<span class="regular-price">{$product.regular_price}</span>
</div>
{/if}
{/block}{block name='product_price'}
<div
class="product-price h5 {if $product.has_discount}has-discount{/if}"
itemprop="offers"
itemscope
itemtype="https://schema.org/Offer"
>
<link itemprop="availability" href="{$product.seo_availability}"/>
<meta itemprop="priceCurrency" content="{$currency.iso_code}">
<meta itemprop="priceValidUntil" content="{'Y'|date+1}-12-31">
<meta itemprop="url" content="{$link->getProductLink($smarty.get.id_product)|escape:'htmlall':'UTF-8'}">
<link itemprop="availability" href="{$product.seo_availability}"/>
<meta itemprop="priceCurrency" content="{$currency.iso_code}"><div class="current-price">
<span itemprop="price" content="{$product.price_amount}">{$product.price}</span>{if $product.has_discount}
{if $product.discount_type === 'percentage'}
<span class="discount discount-percentage">{l s='Save %percentage%' d='Shop.Theme.Catalog' sprintf=['%percentage%' => $product.discount_percentage_absolute]}</span>
{else}
<span class="discount discount-amount">
{l s='Save %amount%' d='Shop.Theme.Catalog' sprintf=['%amount%' => $product.discount_to_display]}
</span>
{/if}
{/if}
</div>{block name='product_unit_price'}
{if $displayUnitPrice}
<p class="product-unit-price sub">{l s='(%unit_price%)' d='Shop.Theme.Catalog' sprintf=['%unit_price%' => $product.unit_price_full]}</p>
{/if}
{/block}
</div>
<meta itemprop="brand" content="{if !empty(Manufacturer::getnamebyid($product.id_manufacturer))}{Manufacturer::getnamebyid($product.id_manufacturer)}{else}{Configuration::get('PS_SHOP_NAME')}{/if}">
<meta itemprop="sku" content="{$product->sku}" />
<meta itemprop="mpn" content="{$product->reference}" />
<div itemprop="review" itemscope itemtype="http://schema.org/Review" style="display:none">
<span itemprop="author">{Configuration::get('PS_SHOP_NAME')}</span>,
<meta itemprop="datePublished" content="{'Y'|date}-{'m'|date}-{'d'|date}">
<div itemprop="reviewRating" itemscope itemtype="http://schema.org/Rating">
<meta itemprop="worstRating" content="1"/>
<span itemprop="ratingValue">5</span>/
<span itemprop="bestRating">5</span>
</div>
{/block}{block name='product_without_taxes'}
{if $priceDisplay == 2}
<p class="product-without-taxes">{l s='%price% tax excl.' d='Shop.Theme.Catalog' sprintf=['%price%' => $product.price_tax_exc]}</p>
{/if}
{/block}{block name='product_pack_price'}
{if $displayPackPrice}
<p class="product-pack-price"><span>{l s='Instead of %price%' d='Shop.Theme.Catalog' sprintf=['%price%' => $noPackPrice]}</span></p>
{/if}
{/block}{block name='product_ecotax'}
{if $product.ecotax.amount > 0}
<p class="price-ecotax">{l s='Including %amount% for ecotax' d='Shop.Theme.Catalog' sprintf=['%amount%' => $product.ecotax.value]}
{if $product.has_discount}
{l s='(not impacted by the discount)' d='Shop.Theme.Catalog'}
{/if}
</p>
{/if}
{/block}{hook h='displayProductPriceBlock' product=$product type="weight" hook_origin='product_sheet'}
<div class="tax-shipping-delivery-label">
{if !$configuration.taxes_enabled}
{l s='No tax' d='Shop.Theme.Catalog'}
{elseif $configuration.display_taxes_label}
{$product.labels.tax_long}
{/if}
{hook h='displayProductPriceBlock' product=$product type="price"}
{hook h='displayProductPriceBlock' product=$product type="after_price"}
{if $product.additional_delivery_times == 1}
{if $product.delivery_information}
<span class="delivery-information">{$product.delivery_information}</span>
{/if}
{elseif $product.additional_delivery_times == 2}
{if $product.quantity > 0}
<span class="delivery-information">{$product.delivery_in_stock}</span>
{* Out of stock message should not be displayed if customer can't order the product. *}
{elseif $product.quantity <= 0 && $product.add_to_cart_url}
<span class="delivery-information">{$product.delivery_out_stock}</span>
{/if}
{/if}
</div>
</div>
{/if}
N'oubliez pas que Prestashop est une plateforme de services, de thèmes et de modules pour fournisseurs et clients et qu'il est donc rempli de limites et de difficultés pour que tout cela puisse s'y vendre. Nous pouvons nous aider bien plus simplement pour ceux qui démarrent et n'ont pas beaucoup d'argent! Autremet achetez un thème et vous n'aurez le plus souvent plus ce genre d'erreur et d'avertissement.
Des bisous les amis autonomes!
Bravo à ceux qui prennent soin des autres face à l'épidémie. Soyons vigilants mais vaillants avec la reprise.