Jump to content
mattwilkie

Google Analytics Error - either "offers", "review", or aggregaterating should be specified

Recommended Posts

I have had a Prestashop site for around 8 years but recently got forced to upgrade (had left it alone since original install due to the amount of work transitioning to a newer version). However my host upgraded and the site stopped working forcing me to upgrade. I have lost a lot of my position with the SEO as I have had to rebuild the site.

I have gone through the basics of Meta tags etc. But currently have this showing in Google Analytics and not sure what its asking me to do :-

either "offers", "review", or aggregaterating should be specified

Now I don't do offers, reviews and not sure what it means with aggregaterating. But my site is a basic setup with no additional modules that could effect the SEO side so not sure what it wants me to do any ideas appreciated.

 

 

  • Like 1

Share this post


Link to post
Share on other sites
23 hours ago, KamilPL said:

My developer say that on the https://search.google.com/structured-data/testing-tool everyting is ok

Yes, your programmer is correct. It looks good, but apparently the searchconsole's crawler is a little more strict than the testing tool.

I seem to have solved it for my site with a theme based on the Classic theme. Basically, I added an offers entry along with a valid price to the product miniature. Ask your programmer to add something like this (the important part is the "offers" div):

	<meta itemprop="image" content="https://shop.example.com/imageURL.jpg" />
	<meta itemprop="description" content="Description text" />
	<meta itemprop="sku" content="123456789" />
	<div itemprop="offers" itemtype="http://schema.org/Offer" itemscope>
		<meta itemprop="url" content="https://shop.example.com/link_to_product.html" />
		<meta itemprop="availability" content="https://schema.org/InStock" />
		<meta itemprop="priceCurrency" content="USD" />
		<meta itemprop="itemCondition" content="New" />
		<meta itemprop="price" content="73077" />
		<div itemprop="seller" itemtype="http://schema.org/Organization" itemscope>
			<meta itemprop="name" content="Example PrestaShop" />
		</div>
	</div>
	<div itemprop="brand" itemtype="http://schema.org/Thing" itemscope>
		<meta itemprop="name" content="BrandOfProduct" />
	</div>

In my template markup there was an itemprop="price" entry which was a string including the currency symbol. Google Products does not like that, it has to be as above.

I still have a few optional fields missing, some I cannot easily solve in my setup. For example: The priceValidUntil field is recommended

 

Hope this helps

 

Share this post


Link to post
Share on other sites

Good evening, I have the same problem.

I state that in my case it is not the default theme but a theme that I bought from addons.prestashop. I contacted the topic support but I have not yet received an answer.

Jaep could you tell me which theme file did you modify?

Thank you.

Share this post


Link to post
Share on other sites

Attached file is a work in progress. With this file installed in our site the search console does not error, but Google still gives a whole lot of warnings. Some warnings also originate in other template files.

Note that this marks all products as 'https://schema.org/InStock'. (line 32)
Note the currency is hard coded to INR (line 33)
Note also that the organization name needs to be changed (line 37) before you use this in your theme.

Our theme is a child of Classic theme. So I modified a Classic template and placed it in my theme. Attached file is located at: /themes/OURCHILDTHEME/templates/catalog/_partials/miniatures/product.tpl

Pfff. The Products enhancement in Google Search Console is a major headache...

HTH,

J

product.tpl

Edited by Jaep (see edit history)

Share this post


Link to post
Share on other sites

Hello Jaep,

 

Thank you for your product.tpl.

Would it be possible to say which lines have been changed ?

My product.tpl has been changed a lot since I copied the classic theme, so it is hard to find which lines you have changed/added.

Thank you again !

Kind regards,

Share this post


Link to post
Share on other sites

In my posted .tpl file, there is one more important issue addressed:

The original Classic theme's file around line 71 has a line that renders the price to something like "€ 12,30":

<span itemprop="price" class="price">{$product.price}</span>

You will need to remove the itemprop="price" because that needs to be part of 'offers' and it must be numeric, without currency symbol (the correct itemprop="price" is added in the <meta> list of tags as posted before). 

<span class="price">{$product.price}</span>

 

J

Share this post


Link to post
Share on other sites
Le 02/03/2019 à 5:25 AM, Jaep a dit :

Attached file is a work in progress. With this file installed in our site the search console does not error, but Google still gives a whole lot of warnings. Some warnings also originate in other template files.

Note that this marks all products as 'https://schema.org/InStock'. (line 32)
Note the currency is hard coded to INR (line 33)
Note also that the organization name needs to be changed (line 37) before you use this in your theme.

Our theme is a child of Classic theme. So I modified a Classic template and placed it in my theme. Attached file is located at: /themes/OURCHILDTHEME/templates/catalog/_partials/miniatures/product.tpl

Pfff. The Products enhancement in Google Search Console is a major headache...

HTH,

J

product.tpl

Bonjour, j'ai remplacer le fichier product.tpl par le votre et quand je le met tout fonctionne les produits s'affichent correctement sauf les catégories produits j'ai erreur 500. Je suis sur prestashop 1.7.4.4 et j'ai mis le fichier dans /themes/classic/templates/catalog/_partials

Share this post


Link to post
Share on other sites
37 minutes ago, hacker gamer shop said:

Bonjour, j'ai remplacer le fichier product.tpl par le votre et quand je le met tout fonctionne les produits s'affichent correctement sauf les catégories produits j'ai erreur 500. Je suis sur prestashop 1.7.4.4 et j'ai mis le fichier dans /themes/classic/templates/catalog/_partials

This is the closest I can get to your question (thank you Google Translate):

Quote

Hello, I replace the file product.tpl by yours and when I put it all works the products are displayed correctly except the product categories I have error 500. I am on prestashop 1.7.4.4 and I put the file in /themes/classic/templates/catalog/_partials

Please put the original file back and ask a programmer to do the changes as described above. Do NOT put my file without changes in the classic theme. Your programmer should place his version here:

/themes/OURCHILDTHEME/templates/catalog/_partials/miniatures/product.tpl

  • Like 1
  • Thanks 1

Share this post


Link to post
Share on other sites
6 minutes ago, okom3pom said:

Thank you. One method to get all actually available variables at a specific position in your smarty template is to use "{debug}" which opens a popup window with all assigned variables including local variables. See https://www.smarty.net/docs/en/language.function.debug.tpl

Share this post


Link to post
Share on other sites
    <div itemprop="offers" itemtype="http://schema.org/Offer" itemscope>
        <meta itemprop="url" content="{$product.url}" />
        <meta itemprop="availability" content="https://schema.org/InStock" />
        <meta itemprop="priceCurrency" content="{$currency.iso_code}" />
        {if $product.condition == 'new'}
        <meta itemprop="itemCondition" content="new" />
        {else if $product.condition == 'used'}
        <meta itemprop="itemCondition" content="used" />
        {else}
        <meta itemprop="itemCondition" content="refurbished" />
        {/if}
        <meta itemprop="price" content="{$product.price_amount}" />
        <div itemprop="seller" itemtype="http://schema.org/Organization" itemscope>
            <meta itemprop="name" content="{$shop.name}" />
        </div>
    </div>

 

Edited by okom3pom
Error code (see edit history)
  • Like 1

Share this post


Link to post
Share on other sites
46 minutes ago, okom3pom said:

<meta itemprop="availability" content="https://schema.org/InStock" />

This one is problematic and not accepted by Google. Google keeps warning "Invalid value type for field 'availability' (optional)" although it seems to me according to the specs.

Could it be caused by the HTTP and HTTPS mixup ?

.....http://schema.org /Offer.....
.....https ://schema.org/InStock.....

I will switch my template to https after the weekend.

Share this post


Link to post
Share on other sites
Il y a 2 heures, Jaep a dit :

This is the closest I can get to your question (thank you Google Translate):

Please put the original file back and ask a programmer to do the changes as described above. Do NOT put my file without changes in the classic theme. Your programmer should place his version here:

/themes/OURCHILDTHEME/templates/catalog/_partials/miniatures/product.tpl

who should I contact to do this? if i give you my product.tpl file could you do it to me?who should I contact to do it? if i give you my product.tpl file, can you do it to me? in exchange I will make your ad on my Youtube channel of 2171 subscribers

Edited by Techno Teck (see edit history)

Share this post


Link to post
Share on other sites
Il y a 7 heures, Jaep a dit:

C'est ce qui se rapproche le plus de ma question (merci Google Translate):

Veuillez vous enregistrer. NE PAS PAS mon fichier sans modifications dans le thème classique. Votre programmeur devrait placer sa version ici:

/ thèmes / OURCHILDTHEME / templates / catalogue / _partials / miniatures /product.tpl

here I fix the error on the other hand now I have 6 warning, how to correct them?

Edited by Techno Teck (see edit history)

Share this post


Link to post
Share on other sites

From my understanding based on what I have read so far the problem seems to be two-fold: a) You may get this error because of the product schema in product page and b) because of the product schema that is used all other pages or blocks e.g. category page, related products. 

So,

a) in product page you need to be make sure that you include one of those tags (if not already included and I think this is not the issue for most shops)

b) Check all other pages in which you list products e.g. the category page, the related products block and for those remove the product schema. 

 

The following seems to be to the point:

https://www.checkerboard.com/web-development/fix-offers-review-aggregaterating-specified/

and refers to Woocommerce but I guess Prestashop and all other e-Commerce plarforms do the same:

Quote

WooCommerce adding schema markup to a page that is not dedicated to a single product is what causes the errors

and 

Quote

Google says that archive and category pages shouldn’t have this markup. There are only two types of pages that will usually use markup, according to Google: A product page dedicated to a single product, or a “shopping aggregator page” that talks about a single product just with different sellers

 

For Woo there seems to be a fix by removing the Product Schema Markup from category pages. Unfortunately in prestashop I haven't seen something consistent. 

  • Like 1

Share this post


Link to post
Share on other sites
Il y a 9 heures, okom3pom a dit :

@yama fixed :) thx

I do not have this code, I have it

your code

<div itemprop="offers" itemtype="http://schema.org/Offer" itemscope>
        <meta itemprop="url" content="{$product.url}" />
        <meta itemprop="availability" content="https://schema.org/InStock" />
        <meta itemprop="priceCurrency" content="{$currency.iso_code}" />
        {if $product.condition == 'new'}
        <meta itemprop="itemCondition" content="new" />
        {elseif if $product.condition == 'used'}
        <meta itemprop="itemCondition" content="used" />
        {else}
        <meta itemprop="itemCondition" content="refurbished" />
        {/if}
        <meta itemprop="price" content="{$product.price_amount}" />
        <div itemprop="seller" itemtype="http://schema.org/Organization" itemscope>
            <meta itemprop="name" content="{$shop.name}" />
        </div>
    </div>

 

and my code

<div itemprop="offers" itemtype="http://schema.org/Offer" itemscope>
        <meta itemprop="url" content="{$product.url}" />
        <meta itemprop="availability" content="https://schema.org/InStock" />
        <meta itemprop="priceCurrency" content="INR" />
        <meta itemprop="itemCondition" content="{$product.condition.schema_url}"
        <meta itemprop="price" content="{$product.price_amount}" />
        <div itemprop="seller" itemtype="http://schema.org/Organization" itemscope>
            <meta itemprop="name" content="TechnoTeck" />
        </div>
    </div>

how much error do you have in the Google Search Console?

Edited by Techno Teck (see edit history)

Share this post


Link to post
Share on other sites
Il y a 5 heures, yama a dit:

Êtes-vous sûr que votre monnaie est la roupie indienne (INR)?

à la place, INR a mis {$ currency.iso_code}

 

ah I was not careful, my currency is the euro but I use several currency on my site, I live in Belgium, you have to change something else?

Share this post


Link to post
Share on other sites
Il y a 5 heures, yama a dit :

Are you sure your currency is Indian rupee (INR)?

instead INR put {$currency.iso_code}

 

how can I correct his warnings?

 

https___search.google.com_search-console_inspect_product_resource_id=https%3A%2F%2Ftechnoteck.fr%2F&id=xK_t4p9aK7ZW9rhbqAc06w - Google Chrome 19-03-19 08_17_16 (2).png

Share this post


Link to post
Share on other sites

guys, sorry I don't want to sound unappreciative of your answers but please try to write in english as this is very difficult for all of us who doesn't know french going back and forth to the google translate. After all this is an English forum. 

 

Share this post


Link to post
Share on other sites
il y a 4 minutes, tanasi a dit :

guys, sorry I don't want to sound unappreciative of your answers but please try to write in english as this is very difficult for all of us who doesn't know french going back and forth to the google translate. After all this is an English forum. 

 

Okay, sorry.

do you have that too? when i'm in products on google search console he tell me

You have to indicate "offers", "review", or "aggregateRating"

and when I'm in url inspection it's more the

Edited by Techno Teck (see edit history)

Share this post


Link to post
Share on other sites

Hello

 

yes indeed this new error appeared 48 hours ago

So, the method proposed by Jaep at the beginning

Google has changed the conditions for the products again.

I tried to see my webmaster that I have a solution on my side

if anyone in I am a taker also

 

thank you

Share this post


Link to post
Share on other sites

Hello Yama

thank you for the information
so if I understand correctly must add this code from okom3pom

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

<div itemprop = "offers" itemtype = "http://schema.org/Offer" itemscope > <meta itemprop = "url" content = "{$ product.url}" /> <méta itemprop = "availability" content = "https://schema.org/InStock" /> <meta itemprop = "priceCurrency" content = "{$ currency.iso_code}" />   
           
           
           
        {if $ product.condition == 'new'}
        <meta itemprop = "itemCondition" content = "new" />   
        {sinon si $ product.condition == 'utilisé'}
        <meta itemprop = "itemCondition" content = "utilisé" />   
        {autre}
        <meta itemprop = "itemCondition" content = "remis à neuf" />   
        {/si}
        <meta itemprop = "price" content = "{$ product.price_amount}" /> <div itemprop = "seller" itemtype = "http://schema.org/Organization" itemscope > <meta itemprop = "name" content = "{$ shop.name}" /> </ div> </ div>

 

xxxxxxxxxxxxxxxxxxxxxxxxxxxxx

 

at the beginning of the product.tpl file

/themes/OURCHILDTHEME/templates/catalog/_partials/miniatures/product.tpl

 

Thanks for your help

  • Like 1

Share this post


Link to post
Share on other sites

Hello

I am a beginner and start to get a little lost in all the modifications for this problem that are proposed.
I left on the model of Jaep, but there is now an error price field missing,
I tried the modification of okom3pom on that of Jaep but it makes me wrong on the shop.
Could a charitable soul make a summary of the changes to be made on the basic product.tpl files of the theme presta 1.7 in order to solve the problem.
Many thanks in advance to all.

  • Like 1

Share this post


Link to post
Share on other sites

Hi,

I have been having a similar but different issue. We had many errors but installed Rich Snippets for Products which fixed the errors but also left the errors behind. Makes no sense I know, please see here:

https://search.google.com/structured-data/testing-tool#url=https%3A%2F%2Ffiddlestix.net.au%2Fall-team-merchandise%2F2976-afl-magnetic-mini-footy-ladder-official-11cm-x-27cm-licensed.html

Does anyone know how I can get rid of the errors and leave just the last snippet?

Thanks in advance

Share this post


Link to post
Share on other sites

I allow myself to answer you because there is not much information

I finally managed to remove the "errors" but not the warnings

by editing the product.tpl file that is located

/ themes / OURCHILDTHEME / templates / catalog / _partials / thumbnails /product.tpl

with the following code:

 

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

{**
 * 2007-2018 PrestaShop
 *
 * 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 license@prestashop.com 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 http://www.prestashop.com for more information.
 *
 * @author    PrestaShop SA <contact@prestashop.com>
 * @copyright 2007-2018 PrestaShop SA
 * @license   https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0)
 * International Registered Trademark & Property of PrestaShop SA
 *}
{block name='product_miniature_item'}
  <article class="product-miniature js-product-miniature" data-id-product="{$product.id_product}" data-id-product-attribute="{$product.id_product_attribute}" itemscope itemtype="http://schema.org/Product">
    <meta itemprop="image" content="{$product.cover.large.url}" />
    <meta itemprop="description" content="{$product.manufacturer_name} {$product.name}" />
    <meta itemprop="sku" content="{$product.reference_to_display}" />
    <div itemprop="offers" itemtype="http://schema.org/Offer" itemscope>
        <meta itemprop="url" content="{$product.url}" />
        <meta itemprop="availability" content="https://schema.org/InStock" />
        <meta itemprop="priceCurrency" content="{$currency.iso_code}" />
        {if $product.condition == 'new'}
        <meta itemprop="itemCondition" content="new" />
        {else if $product.condition == 'used'}
        <meta itemprop="itemCondition" content="used" />
        {else}
        <meta itemprop="itemCondition" content="refurbished" />
        {/if}
        <meta itemprop="price" content="{$product.price_amount}" />
        <div itemprop="seller" itemtype="http://schema.org/Organization" itemscope>
            <meta itemprop="name" content="{$shop.name}" />
        </div>
    </div>
    <div itemprop="brand" itemtype="http://schema.org/Thing" itemscope>
        <meta itemprop="name" content="{$product.manufacturer_name}" />
    </div>

    <div class="thumbnail-container">
      {block name='product_thumbnail'}
        {if $product.cover}
          <a href="{$product.url}" class="thumbnail product-thumbnail">
            <img
              src = "{$product.cover.bySize.home_default.url}"
              alt = "{if !empty($product.cover.legend)}{$product.cover.legend}{else}{$product.name|truncate:30:'...'}{/if}"
              data-full-size-image-url = "{$product.cover.large.url}"
            >
          </a>
        {else}
          <a href="{$product.url}" class="thumbnail product-thumbnail">
            <img
              src = "{$urls.no_picture_image.bySize.home_default.url}"
            >
          </a>
        {/if}
      {/block}

      <div class="product-description">

 

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

to put on top of

<div class="product-description">

 

which becomes line 69

 

I hope it can help you.

cordially

Share this post


Link to post
Share on other sites
Le 15/03/2019 à 15:45, Techno Teck a déclaré:

Hi wess france,
can this code apply to Prestashop 1.6?

 

Edited by patall (see edit history)

Share this post


Link to post
Share on other sites

Would the Francophone community be able to do something with this incomprehensible ascii dump?

Share this post


Link to post
Share on other sites
8 hours ago, Eolia said:

What Ascii Dump ?

The one that most people do not expect in an English forum but apparently is considered their mother tongue by others. 

Share this post


Link to post
Share on other sites
On 3/19/2019 at 2:11 PM, tanasi said:

guys, sorry I don't want to sound unappreciative of your answers but please try to write in english as this is very difficult for all of us who doesn't know french going back and forth to the google translate. After all this is an English forum. 

 

This was March 19.

  • Like 1

Share this post


Link to post
Share on other sites
On 3/18/2019 at 3:41 PM, tanasi said:

From my understanding based on what I have read so far the problem seems to be two-fold: a) You may get this error because of the product schema in product page and b) because of the product schema that is used all other pages or blocks e.g. category page, related products. 

So,

a) in product page you need to be make sure that you include one of those tags (if not already included and I think this is not the issue for most shops)

b) Check all other pages in which you list products e.g. the category page, the related products block and for those remove the product schema. 

 

The following seems to be to the point:

https://www.checkerboard.com/web-development/fix-offers-review-aggregaterating-specified/

and refers to Woocommerce but I guess Prestashop and all other e-Commerce plarforms do the same:

and 

 

For Woo there seems to be a fix by removing the Product Schema Markup from category pages. Unfortunately in prestashop I haven't seen something consistent. 

I do not understand what you've all been talking about (because I do not understand french) in this international English department but this is just a kind reminder: after we tried solutions, @anasi explained on March 18, that the product schema markup  needs to be removed from category pages (see quote above).

 

7 hours ago, Eolia said:

No, it's an international forum. Here you are in the French section, so normal that we speak French^^
Where are english helpers on your sections ?

Hahaha.

International community (English)

Topics and messages here are posted in English. To post in your native language, please use the appropriate PrestaShop community board.

Edited by Jaep (see edit history)

Share this post


Link to post
Share on other sites

Sorry guy, French people think the world is French territory, it's the fault of Napoleon 😛

 

It's just there is the same topic in French side, sorry.

Share this post


Link to post
Share on other sites
5 minutes ago, yama said:

fault of Napoleon 😛

It's just there is the same topic in French side, sorry.

Yes. Let's blame it on Napoleon :).

Please share a link so the Frenchies can find their way back to their Bastille.

Share this post


Link to post
Share on other sites

Oh, I just switched to my desktop computer and I can't stop laughing. 
This one should be preserved for humanity, since @Eolia has this brilliant quote in his signature which earlier on my mobile did not show up:

"Il y a au moins deux choses infinies au monde : l'univers et la bêtise humaine....mais pour l'univers je n'en suis pas très sûr" - Albert Einstein
 

Let's analyse that a bit. This is the forum you are looking at:

1963719203_Annotation2019-05-10103804.png.9a0e20b81de8b32c599250f8e00b2a0d.png

 

The French view on this forum disagrees with the header, voiced by @Eolia:

12 hours ago, Eolia said:

No, it's an international forum. Here you are in the French section, so normal that we speak French^^
Where are english helpers on your sections ?

 

 

Do I need to ask what this Albert Einstein quote in @Eolia's signature means? Ah, whatever, let's run it through Google Translate:

"There are at least two infinite things in the world: the universe and human stupidity .... but for the universe I'm not very sure" - Albert Einstein

Very fitting, very very fitting.

After working a bit with the Github people, I was actually doing my best to revive the English support and explore solutions here. So it kind of hurts to read dumb messages from self-righteous Frenchies doing nothing more than scaring off English helpers. 

Jaep

Edited by Jaep (see edit history)

Share this post


Link to post
Share on other sites

The problem here is the topic get started in the french section.

The actual "tought control" team reparented the topic in the English section. However most of us did not noticed (I did not) and been following the topic receive notification.

Basically all the french comment recommand to apply the google official guidelines.

offers and reviews warning are simply warning - ignore them. All other errors are self-explainary.

Share this post


Link to post
Share on other sites

Well, they can now move it back to the French section. It is no use in the English section at all.

Edit: I doubt that story is true. As you can see, I was the second person responding to the original question. And I cannot imagine myself writing in a French forum at all. Please substantiate your statement.

Edited by Jaep (see edit history)

Share this post


Link to post
Share on other sites

Discussion here should now follow in ENGLISH language please. If the problem persists for French, so please feel free to open a new topic in FRENCH language on FRENCH forum section. Thank you.

  • Like 1

Share this post


Link to post
Share on other sites

hi All, 
I've just discovered this issue on my search console. 
 

What this is issue fixed with the latest PS version 1.7.5.2 ? if not is it going to be fixed by the core team ?

 

Share this post


Link to post
Share on other sites
On 2/28/2019 at 8:33 AM, Jaep said:

Yes, your programmer is correct. It looks good, but apparently the searchconsole's crawler is a little more strict than the testing tool.

I seem to have solved it for my site with a theme based on the Classic theme. Basically, I added an offers entry along with a valid price to the product miniature. Ask your programmer to add something like this (the important part is the "offers" div):


	<meta itemprop="image" content="https://shop.example.com/imageURL.jpg" />
	<meta itemprop="description" content="Description text" />
	<meta itemprop="sku" content="123456789" />
	<div itemprop="offers" itemtype="http://schema.org/Offer" itemscope>
		<meta itemprop="url" content="https://shop.example.com/link_to_product.html" />
		<meta itemprop="availability" content="https://schema.org/InStock" />
		<meta itemprop="priceCurrency" content="USD" />
		<meta itemprop="itemCondition" content="New" />
		<meta itemprop="price" content="73077" />
		<div itemprop="seller" itemtype="http://schema.org/Organization" itemscope>
			<meta itemprop="name" content="Example PrestaShop" />
		</div>
	</div>
	<div itemprop="brand" itemtype="http://schema.org/Thing" itemscope>
		<meta itemprop="name" content="BrandOfProduct" />
	</div>

In my template markup there was an itemprop="price" entry which was a string including the currency symbol. Google Products does not like that, it has to be as above.

I still have a few optional fields missing, some I cannot easily solve in my setup. For example: The priceValidUntil field is recommended

 

Hope this helps

 

Hi Jaep and all,

My eshop is running on 1.6.1, I've seen this morning this warning at my search console

The solution advised seems to work well on 1.7 but for various reasons I'm unable to upgrade to 1.7

Is there anyone who could advise on the right itemprop structure that would turn my shop products compliant with Google products rules?

Many thanks in advance

Alex

Share this post


Link to post
Share on other sites

Hello,

I would like to know if anyone can help me solve my little problems,

I switched to version 1.7.5.2 and changed my theme (Charm).

Google sends errors over 340 ...

"Must indicate" offers "," review ", or" aggregateRating "

priceValidUntil

brand

review

sku

and the last (empty)

I tried to edit some file but it did not change anything ...

thank you in advance for your help

Erreur_Google_03.jpg

Share this post


Link to post
Share on other sites

Hello everybody,

I've the same problem with Google Search on a PS 1.6.1.7 with the Transformer theme.

Not errors but warning (it's better to fill the field) about : availability, priceValidUntil, url, aggregateRating, brand, review, sku and isbn (or other global identifier).
These warnings are on product list and product page.
If I delete these itemprop (because these fields are not used on the front) in product-list.tpl, product.tpl and productcomment.tpl, is it ok without creating errors ?

 

Thanks

 

Share this post


Link to post
Share on other sites

 Same problem happens in Prestashop 1.7.5.1 and also Prestashop 1.7.6
I thought it would have been fixed in Prestashop 1.7.6

Share this post


Link to post
Share on other sites

this worked for me..

 

themes/########/templates/catalog /_partials /miniatures/product.tpl

I modified this piece of code:
{block name='product_price_and_shipping'} {if $product.show_price} <div class="product-price-and-shipping pricehv">
in this way:
{block name='product_price_and_shipping'} {if $product.show_price} <div class="product-price-and-shipping pricehv" itemprop="offers" itemscope itemtype="https://schema.org/Offer">

  • Like 1

Share this post


Link to post
Share on other sites
On 4/3/2019 at 6:30 PM, wess france said:

I allow myself to answer you because there is not much information

I finally managed to remove the "errors" but not the warnings

by editing the product.tpl file that is located

/ themes / OURCHILDTHEME / templates / catalog / _partials / thumbnails /product.tpl

with the following code:

 

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

{**
 * 2007-2018 PrestaShop
 *
 * 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 license@prestashop.com 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 http://www.prestashop.com for more information.
 *
 * @author    PrestaShop SA <contact@prestashop.com>
 * @copyright 2007-2018 PrestaShop SA
 * @license   https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0)
 * International Registered Trademark & Property of PrestaShop SA
 *}
{block name='product_miniature_item'}
  <article class="product-miniature js-product-miniature" data-id-product="{$product.id_product}" data-id-product-attribute="{$product.id_product_attribute}" itemscope itemtype="http://schema.org/Product">
    <meta itemprop="image" content="{$product.cover.large.url}" />
    <meta itemprop="description" content="{$product.manufacturer_name} {$product.name}" />
    <meta itemprop="sku" content="{$product.reference_to_display}" />
    <div itemprop="offers" itemtype="http://schema.org/Offer" itemscope>
        <meta itemprop="url" content="{$product.url}" />
        <meta itemprop="availability" content="https://schema.org/InStock" />
        <meta itemprop="priceCurrency" content="{$currency.iso_code}" />
        {if $product.condition == 'new'}
        <meta itemprop="itemCondition" content="new" />
        {else if $product.condition == 'used'}
        <meta itemprop="itemCondition" content="used" />
        {else}
        <meta itemprop="itemCondition" content="refurbished" />
        {/if}
        <meta itemprop="price" content="{$product.price_amount}" />
        <div itemprop="seller" itemtype="http://schema.org/Organization" itemscope>
            <meta itemprop="name" content="{$shop.name}" />
        </div>
    </div>
    <div itemprop="brand" itemtype="http://schema.org/Thing" itemscope>
        <meta itemprop="name" content="{$product.manufacturer_name}" />
    </div>

    <div class="thumbnail-container">
      {block name='product_thumbnail'}
        {if $product.cover}
          <a href="{$product.url}" class="thumbnail product-thumbnail">
            <img
              src = "{$product.cover.bySize.home_default.url}"
              alt = "{if !empty($product.cover.legend)}{$product.cover.legend}{else}{$product.name|truncate:30:'...'}{/if}"
              data-full-size-image-url = "{$product.cover.large.url}"
            >
          </a>
        {else}
          <a href="{$product.url}" class="thumbnail product-thumbnail">
            <img
              src = "{$urls.no_picture_image.bySize.home_default.url}"
            >
          </a>
        {/if}
      {/block}

      <div class="product-description">

 

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

to put on top of

<div class="product-description">

 

which becomes line 69

 

I hope it can help you.

cordially

Could you please help me in this case? I couldnt find :(

product.tpl.asli.txt

Share this post


Link to post
Share on other sites

Hi all, 

I just implemented the solution as shown at https://github.com/PrestaShop/PrestaShop/pull/14558/files?file-filters[]=.tpl#diff-81d8fb082229455fb3663bf270c7f15e  This resolves this error. And generates the next one... 
In Google's structured data testing tool (https://search.google.com/structured-data/testing-tool) i now get "all values provided for url must point to the same page."

 

Digging deeper in the structured data definitions i got to this page https://developers.google.com/search/docs/guides/sd-policies where i find this paragraph: 

"A category page listing several different products (or recipes, videos, or any other type). Each entity should be marked up using the relevant schema.org type, such as schema.org/Product for product category pages. However, if one item is marked, all items should be marked. Also, unless this is a carousel page, the marked items should not link out to separate details pages.

Is the whole problem in the lists not that they should not be marked with structured product data?  In some big ecommerce sites  i see the SaleEvent object, not the individual products. 

Any SEO expert that has an opinion about this issue?

Thanks,

allard

Share this post


Link to post
Share on other sites
On 7/30/2019 at 6:53 AM, patall said:

I switched to version 1.7.5.2 and changed my theme (Charm).

Google sends errors over 340 ...

"Must indicate" offers "," review ", or" aggregateRating "

priceValidUntil

brand

review

sku

and the last (empty)

Erreur_Google_03.jpg

Same problem with new 1.7.6 installation. What is the solution? Does a module like this help? https://addons.prestashop.com/en/seo-natural-search-engine-optimization/46937-rich-snippet-seo-structured-data.html#overview

 

I don't understand, google is aking for values that I don't specify for products in my shop.. for example there are no "reviews".

Edited by Dan1 (see edit history)

Share this post


Link to post
Share on other sites

Hi PS members,

I could managed to make the corrections "by hand" following the github info above, on my prod site.

I checked with the PS 1.7.6.0 (testing with classic theme) but the error is still there...

Is there a plan to finally correct the PS core code in the next versions ?? or is it left to template/add-ons providers ?

Share this post


Link to post
Share on other sites
18 hours ago, ltd said:

Hi PS members,

I could managed to make the corrections "by hand" following the github info above, on my prod site.

I checked with the PS 1.7.6.0 (testing with classic theme) but the error is still there...

Is there a plan to finally correct the PS core code in the next versions ?? or is it left to template/add-ons providers ?

Same, I have the same issue and I think the proper way is fixing PS core

Share this post


Link to post
Share on other sites

Dear All,

for the 1.7.6.1 the problem is the same. I found a video on youtube about the problem.

Because I am beginner in the PS, may somebody with more experience check and send feedback are those changes in the .tpl looks OK or not?

Hope for some replays.

Best regards,

Share this post


Link to post
Share on other sites

Could someone finally suggest a definitive solution?
No one is trying to steal someone's work, on the contrary, it just seems the opposite.
It seems that you want to force yourself to contact prestashop developers to solve a problem that should not exist in a cms for ecommerce.
Do not worry that nobody will spend € 500 to repair this, but the solution will be found and posted.
I do not put my site to hand to solve two crap.

Share this post


Link to post
Share on other sites

hi,

I tried to add some codes on the product.tpl, but it shows big error

The property {$product.price_amount} is not a valid price specification. Learn more about http://schema.org/price.

 

Share this post


Link to post
Share on other sites

I just found this solution in the french forum and it seems to work in PS 1.7.6.1

in file templates/catalog/_partials/miniatures/product.tpl

after

{block name='product_miniature_item'}
  <article class="product-miniature js-product-miniature" data-id-product="{$product.id_product}" data-id-product-attribute="{$product.id_product_attribute}" itemscope itemtype="http://schema.org/Product">

I added:


    <meta itemprop="image" content="{$product.cover.large.url}" />
    <meta itemprop="description" content="{$product.name}" />
    <meta itemprop="sku" content="{$product->id}" /> 
    <meta itemprop="gtin13" content="{$product->ean13}" />
    <meta itemprop="mpn" content="{$product->reference}" />
    <meta itemprop="description" content="{$product.description_short|strip_tags:'UTF-8'|truncate:360:'...'}" />   
    <div itemprop="offers" itemtype="http://schema.org/Offer" itemscope>
        <meta itemprop="url" content="{$product.url}" />
        <meta itemprop="availability" content="https://schema.org/InStock" />
        <meta itemprop="priceCurrency" content="EUR" />
        <meta itemprop="itemCondition" content="New" />
        <meta itemprop="price" content="{$product.price_amount}" />
        <meta itemprop="priceValidUntil" content="{'Y'|date+1}-12-31">
        <div itemprop="seller" itemtype="http://schema.org/Organization" itemscope>
            <meta itemprop="name" content="{$shop.name}" />
        </div>
    </div>
<meta itemprop="brand" content="{if !empty(Manufacturer::getnamebyid($product.id_manufacturer))}{Manufacturer::getnamebyid($product.id_manufacturer)}{else}{Configuration::get('PS_SHOP_NAME')}{/if}">

In file /templates/catalog/_partials/product-prices.tpl

after

    {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}">

I added

<meta itemprop="priceValidUntil" content="{'Y'|date+1}-12-31">
        <meta itemprop="url" content="{$link->getProductLink($smarty.get.id_product)|escape:'htmlall':'UTF-8'}">

 

Maybe you only have to check with google structured data testing tool your missing data.

Share this post


Link to post
Share on other sites
18 hours ago, Gipsy said:

I just found this solution in the french forum and it seems to work in PS 1.7.6.1

in file templates/catalog/_partials/miniatures/product.tpl

after

{block name='product_miniature_item'}
  <article class="product-miniature js-product-miniature" data-id-product="{$product.id_product}" data-id-product-attribute="{$product.id_product_attribute}" itemscope itemtype="http://schema.org/Product">

I added:


    <meta itemprop="image" content="{$product.cover.large.url}" />
    <meta itemprop="description" content="{$product.name}" />
    <meta itemprop="sku" content="{$product->id}" /> 
    <meta itemprop="gtin13" content="{$product->ean13}" />
    <meta itemprop="mpn" content="{$product->reference}" />
    <meta itemprop="description" content="{$product.description_short|strip_tags:'UTF-8'|truncate:360:'...'}" />   
    <div itemprop="offers" itemtype="http://schema.org/Offer" itemscope>
        <meta itemprop="url" content="{$product.url}" />
        <meta itemprop="availability" content="https://schema.org/InStock" />
        <meta itemprop="priceCurrency" content="EUR" />
        <meta itemprop="itemCondition" content="New" />
        <meta itemprop="price" content="{$product.price_amount}" />
        <meta itemprop="priceValidUntil" content="{'Y'|date+1}-12-31">
        <div itemprop="seller" itemtype="http://schema.org/Organization" itemscope>
            <meta itemprop="name" content="{$shop.name}" />
        </div>
    </div>
<meta itemprop="brand" content="{if !empty(Manufacturer::getnamebyid($product.id_manufacturer))}{Manufacturer::getnamebyid($product.id_manufacturer)}{else}{Configuration::get('PS_SHOP_NAME')}{/if}">

In file /templates/catalog/_partials/product-prices.tpl

after

    {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}">

I added

<meta itemprop="priceValidUntil" content="{'Y'|date+1}-12-31">
        <meta itemprop="url" content="{$link->getProductLink($smarty.get.id_product)|escape:'htmlall':'UTF-8'}">

 

Maybe you only have to check with google structured data testing tool your missing data.

hi, Gipsy

Really appreciate your reply. My prestashop is 1.7.6.1 

I submitted validation again and hopefully this time it will pass (3 times alreay). Waiting time is so annoying.

1.  in file templates/catalog/_partials/miniatures/product.tpl

I did not change the codes you gave  too much except for the currency. 

2. In file /templates/catalog/_partials/product-prices.tpl

The codes make all my product pages dead and come with 500 error. 

The above two points are my feedback which could be helpful to others.

Anyway, thank you very much. You are legend, Gipsy.

Share this post


Link to post
Share on other sites

Hi guys I have a Prestashop Version 1.6 store 26 of my products have errors that I don't know how to fix

my store: dgsa.ir

I've been having this problem for months. Please help me thank you

 

photo_2019-12-09_13-35-13.jpg

photo_2019-12-09_13-35-24.jpg

product.tpl

Share this post


Link to post
Share on other sites

Our efforts to unravel the "instructions" above in this thread and fix our Google Search Console errors have failed (and broke our site).
The problem for us is the instructions do not actually contain sufficient step-by-step information.

We are running Prestashop 1.6.1.2 with modified product.tpl (no child themes). Google Search Console is producing over 700 errors:

Error  "Either "offers", "review", or "aggregateRating" should be specified

There are also warnings on every product:

Warning Missing field "brand"
Warning No global identifier provided (e.g., gtin, mpn, isbn)
Warning Missing field "priceValidUntil"
Warning Missing field "url"
Warning Missing field "aggregateRating"
Warning Missing field "review"
Warning Missing field "availability"
Warning Missing field "sku"
Warning Missing field "description"

We are using Customer Ratings and Reviews Pro + Google Rich Snippets v4.1.6 - by Business Tech - which was a massive mistake in our opinion, this module has never worked properly for us, nor could we ever get it to update. It's also incredibly slow to load, or to perform any administrative functions (such as approve reviews), taking nearly 5 minutes to display the admin screens.

We've contacted Biz Tech about these Search Console errors and they refused to help (their answer was buy the newer version). They refused to answer our specific questions regarding if they've actually solved each of these errors in their updated version of this module (we provided them with the entire list of errors asking if they fixed these - they chose not to respond to those questions).

Why would we buy this crappy module again on a gamble like that? Needless to say, we're extremely frustrated with this company, but it has been our experience that Prestashop module support is among the worst in the world, so par for the course in our opinion.

We have tried turning this module off, but that hasn't actually solved the Search Console errors either. Clearly, we need code corrections.

Has anyone here resolved these Search Console errors in Prestashop 1.6x? If so, exactly what steps did you take, and which files were modified?

 

 

Screen Shot 2020-02-10 at 11.43.12 AM.png

Edited by FoodAssets (see edit history)

Share this post


Link to post
Share on other sites

The same .I have not errors but i have to many warnings  Prestashop 1.6.1.4 A solution must be found.

Screenshot_2020-02-12 Продукти.png

Share this post


Link to post
Share on other sites

Hi, guys
 

The best way to get rid of these errors is to buy the relevant mircodata module which can make you web clean if you have no time and expertise to do the schema mark up. I did try many times to fix this problem before, but I failed. Finally, I purchase one module which almost cleared all the errors.  Our business web is clean.
 

The warnings are that important, but google will change its mind later probably. That means the current warnings could become errors in the near future. Still, try your best to get rid of warnings following the google advice. 


 

 

Share this post


Link to post
Share on other sites

That's definitely not going to work for us. Module developers rarely get things right in our experience, nor do they bother answering detailed questions (as explained in my post). They're more interested in just taking money versus providing well-coded modules. Prestashop is plagued with serious issues out of the box, and there seems to be a "module fix" for each of them (by design in our opinion). It's great way for them to take money - no thanks.

You're "almost cleared all the errors" comment is a great example of how crappy module developers are in our experience and seem to be in the business of releasing poor quality "solutions". We're just not interested in supporting this kind of shady business activity.

We tested your product page in Google's Structured Data Testing Tool (https://www.erenovation.com.au/in-wall-cistern-wall-hung-toilets/reno-302-rt-cistern-wall-hung-toilet#/59-button_option_rt-g3004109_square_chrome_12500/63-toilet_pan_color_option-gloss_white_toilet_pan) and it reports 4 warnings which I'm sure you know about.

There is a difference we've noted in the Testing Tool warnings and errors, and what Google Tools shows (increased severity). They are not giving out the same errors and warnings in all cases, some warnings are now "Errors", which are more severe.

We also suspect Google will (and has) changed its mind about how important these warnings and errors are.

This is a code problem with the core files in Prestashop in our opinion and it needs to be fixed.

 

 

Edited by FoodAssets (see edit history)

Share this post


Link to post
Share on other sites

Yeah, mate

i know our product pages have 4 warnings, but it is normal. You should check products with reviews in my web, mate.

Only the products without reviews will show the warnings related. 

Share this post


Link to post
Share on other sites

 The FoodAssets is right, modules cannot be taken for everything. I have a module  schema-markup-tool-with-rich-snippets-seo-module  but that doesn't solve things. I have no errors, https://beautyandpower.eu/ neither for products nor for categories, but the warnings are enough.   I remove from product list tpl  and from product tpl all  itemscope, itemprop and the warnings disappeared, but it's not a solution and I returned the original files.

Share this post


Link to post
Share on other sites

I had more errors on my thirtybees (Prestashop 1.6.0.9) version than products. Spend weeks to find solution. Unistalled a module Block Category Products and solved most of the errors. After testing on google few errors left, futher investigation pointed only few products that caused all errors. Removing all those products solved all errors, only warnings left. Few months later some of those warning started to change to errors, have now 8 errors on 8 products. Removed those products, cleared cache but google still see them. I am trying to solve warnings. Thirtybee is a better platform as I have only 118 modules (Presta had 256). My website is bargains-zone.co.uk

Share this post


Link to post
Share on other sites

This is product.tpl i used and google has accepted... I have changed in clasic and my custom theme. Added only 2 lines; DONT FORGET TO DELETE "FIXED" and left only "product"

<div itemprop="offers" itemtype="http://schema.org/Offer" itemscope>

              <meta itemprop="price" content="{$product.price_amount}">
              
              </div>

productFIXED.tpl

Edited by goldies (see edit history)

Share this post


Link to post
Share on other sites
Posted (edited)
On 2/27/2020 at 3:15 PM, goldies said:

This is product.tpl i used and google has accepted... I have changed in clasic and my custom theme. Added only 2 lines; DONT FORGET TO DELETE "FIXED" and left only "product"

<div itemprop="offers" itemtype="http://schema.org/Offer" itemscope>

              <meta itemprop="price" content="{$product.price_amount}">
              
              </div>

productFIXED.tpl 4.89 kB · 11 downloads

Where is your product.tpl located? It looks nothing like my 1.7.6.0  file which has almost 300 lines, yours has about 100.

.3 couldn't be that different from .0

Edited by Dan1 (see edit history)

Share this post


Link to post
Share on other sites
Posted (edited)

We are still hoping for someone to offer some real solutions to this problem. So far, nobody has weighed in on anything that works. That download link from goldies is disabled, and for the wrong version, so we can't even look at it for some ideas.

We attempted to hire a company to helps solve this issue, but they too remain clueless on what to do, so even that attempt went nowhere. Needless to say, we are very unimpressed with Prestashop support, module developers and so on. This reinforces our opinion that this is actually a horrible platform to build your business around.

Our company is being literally pummeled with orders now (we sell food) due to the coronavirus pandemic, and yet Google is ranking us very, very, VERY badly. You'd think the opposite would be true, since we have more business then we've ever seen now. But apparently, Google is punishing us for the 700+ Errors it's throwing on the Products. We can think of no other explanation for the poor ranking vs heavy site traffic we're now getting.

This is undoubtedly costing us thousands of customers during the current crisis. If ANYBODY has some ideas for version 1.6.1.2 please let us know ASAP.

Edited by FoodAssets (see edit history)

Share this post


Link to post
Share on other sites