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

Highlighted
Shopify Partner
382 28 48

@JeanMarc0594 

Thank you for sharing your concern with me and I hope you are safe.

Well I have checked your site and I found that you have added product review app recently so product has no customer review. You can do one thing if you have past order detail then send custom one email regarding review from review app or email marketing and ask them to add review. Without customer review aggregate rating issue fix is not possible.

While other errors priceuntill, global identifier and review I need access of your store to fix errors from theme and it is chargeable. So let me know if you want to fix it then I will send you store admin collaborator access request and for faster response you get contact me on email or skype on below contact details.

Thanks & Regards
Akshay Vaghasiya

Shopify Expert | Skype: akshayvaghasiya84
 - Like and Mark as an Accepted Solution if my reply helpful
 - Feel free to contact me on akshayvaghasiya84@gmail.com for any queries
 - Want to modify or custom changes on store hire me .
0 Likes
Highlighted
New Member
2 0 0

Morning  

Just added you into Skype. Many thanks for your quick answer.

Jean-Marc

0 Likes
Highlighted
Shopify Partner
382 28 48

@JeanMarc0594 

Check skype to continue further discussion.

Thanks & Regards
Akshay Vaghasiya

Shopify Expert | Skype: akshayvaghasiya84
 - Like and Mark as an Accepted Solution if my reply helpful
 - Feel free to contact me on akshayvaghasiya84@gmail.com for any queries
 - Want to modify or custom changes on store hire me .
0 Likes
Highlighted
Tourist
4 0 1

The solution for me was ultimately pretty simple.

To fix the GSC message "Either "offers", "review", or "aggregateRating" should be specified." go to edit theme -> sections -> product-template.liquid

At least on Brooklyn theme (2019 version and earlier), the code is wrapped in two overlapping schemes like this:

<div itemscope itemtype="http://schema.org/Product" id="ProductSection--{{ section.id }}" data-section-id="{{ section.id }}" data-section-type="product-template" data-image-zoom-type="{{ section.settings.zoom_enable }}" data-enable-history-state="true" data-scroll-to-image="true">
  <div itemscope itemtype="http://schema.org/Product">

some code

</div>
</div>

to get rid of the error message, delete the second line "<div itemscope itemtype="http://schema.org/product">" and the closing tag "</div>" for it. The code should look like this after you're done:

<div itemscope itemtype="http://schema.org/Product" id="ProductSection--{{ section.id }}" data-section-id="{{ section.id }}" data-section-type="product-template" data-image-zoom-type="{{ section.settings.zoom_enable }}" data-enable-history-state="true" data-scroll-to-image="true">

some code

</div>

 

After you're done check to see if the errors are gone using SDTT.

Hope this helps!

0 Likes
Highlighted
Excursionist
20 0 3

Hello!

My store - https://amzsupply.com
Example product URL - https://amzsupply.com/collections/kraft-padded-envelopes/products/7-25x7-cd-size-kraft-bubble-mailer...
Theme -Warehouse 
Reviews app - Shopify reviews app
Google Test Tool URL - PRODUCT

I am using Warehouse theme and Shopify reviews app.
The theme already comes with JSON_LD generation, but I disabled that to use SMART SEO. I removed {% render 'microdata-schema'%} from theme.liquid so that it doesn't duplicate SMART SEO.

Now there is a problem with JSON-LD for reviews that seem to be duplicated. I cannot find what and where to edit in the code. I have seen a similar one in this thread, but have not solved this problem.

Friends, help me with these.

0 Likes
Highlighted
Excursionist
50 0 3

I have  found 4 warnings ,but iam unable to resolve it.can you please tell solution for it.

Akhilkotha96_0-1598540166334.png

Above screenshot shows the warnings,please tell how to fix it.URL is https://www.gullylivefast.com/pages/deal-of-the-day

0 Likes
Highlighted
Shopify Partner
474 11 88

You can resolve everything except the reviews warnings by following the guide here: https://feedarmy.com/kb/shopify-microdata-for-google-shopping/

Make sure to cleanup your theme to remove any old code.

I'm a Google Shopping Specialist & a Google Ads Platinum Product Expert (Only a hand full of Platinum experts in the world!)
Need a Premium Data Feed Management Tool? Get in touch. (DIY/Managed)
0 Likes
Highlighted
Excursionist
50 0 3

<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "Product",
"offers": {
"@type": "Offer",
"availability":"https://schema.org/{% if product.available %}InStock{% else %}OutOfStock{% endif %}",
"price": "{{ current_variant.price | divided_by: 100.00 }}",
"priceCurrency": "{{ cart.currency.iso_code }}",
"priceValidUntil": "{{ 'now' | date: '%s' | plus: days_price_valid_until | date: '%Y-%m-%d'}}",
"url": "{{ shop.url }}{{ product.url }}"
},
"brand": {{ product.vendor | json }},
"sku": {{ current_variant.sku | json }},
"name": {{ product.title | json }},
"description": {{ product.description | strip_html | json }},
"category": "",
"url": "{{ shop.url }}{{ product.url }}",
{%- if is_barcode_available and is_valid_gtin_length %}
"{{gtin_option}}": {{ current_variant.barcode | json }},
"productId": {{ current_variant.barcode | json }},
{%- elsif is_barcode_available %}
"mpn": {{ current_variant.barcode | json }},
"productId": {{ current_variant.barcode | json }},
{%- endif -%}
{%- if review_rating %}
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "{{ review_rating }}",
"reviewCount": "{{ review_count }}"
},
{%- endif %}
"image": {
"@type": "ImageObject",
"url": "https:{{ product.featured_image.src | img_url: '1024x1024' }}",
"image": "https:{{ product.featured_image.src | img_url: '1024x1024' }}",
"name": {{ product.title | json }},
"width": 1024,
"height": 1024
}
}
</script>

This is our schema script,what should be value for sku,aggregate rating,product review and product identifier.

Can you please tell how script should be changed to avoid that warnings.

0 Likes
Highlighted
Excursionist
50 0 3

This is my product-template-variable-liquid code which contains script for product.

{%- assign current_variant = product.selected_or_first_available_variant -%}
{%- assign days_price_valid_until = 10 | times: 86400 -%}
{%- assign gtin_option = 'gtin' -%}
{%- assign is_barcode_available = false -%}
{%- if current_variant.barcode != blank -%}
{%- assign is_barcode_available = true -%}
{%- assign gtin_string_length = current_variant.barcode | size -%}
{%- if gtin_string_length == 8 or gtin_string_length == 12 or gtin_string_length == 13 or gtin_string_length == 14 -%}
{%- assign is_valid_gtin_length = true -%}
{%- assign gtin_option = gtin_option | append: gtin_string_length -%}
{%- endif -%}
{%- endif -%}
{%- assign review_rating = false -%}
{% if settings.enable_product_reviews %}
{% if product.metafields.spr.reviews %}
{% capture review_data %}{{ product.metafields.spr.reviews }}{% endcapture %}
{%- assign rating_keyword = '"ratingValue"' -%}
{%- assign rd_a1 = review_data | split: rating_keyword -%}
{%- assign rd_a2 = rd_a1[1] | split: "=" -%}
{%- assign rd_a3 = rd_a2[1] | split: '"' -%}
{%- assign review_rating = rd_a3[1] | plus: 1 | minus: 1 -%}

{%- assign count_keyword = '"reviewCount"' -%}
{%- assign rd_a1 = review_data | split: count_keyword -%}
{%- assign rd_a2 = rd_a1[1] | split: "=" -%}
{%- assign rd_a3 = rd_a2[1] | split: '"' -%}
{%- assign review_count = rd_a3[1] | plus: 1 | minus: 1 -%}
{% endif %}
{% endif %}

<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "Product",
"offers": {
"@type": "Offer",
"availability":"https://schema.org/{% if product.available %}InStock{% else %}OutOfStock{% endif %}",
"price": "{{ current_variant.price | divided_by: 100.00 }}",
"priceCurrency": "{{ cart.currency.iso_code }}",
"priceValidUntil": "{{ 'now' | date: '%s' | plus: days_price_valid_until | date: '%Y-%m-%d'}}",
"url": "{{ shop.url }}{{ product.url }}"
},
"brand": {{ product.vendor | json }},
"sku": {{ current_variant.sku | json }},
"name": {{ product.title | json }},
"description": {{ product.description | strip_html | json }},
"category": "",
"url": "{{ shop.url }}{{ product.url }}",
{%- if is_barcode_available and is_valid_gtin_length %}
"{{gtin_option}}": {{ current_variant.barcode | json }},
"productId": {{ current_variant.barcode | json }},
{%- elsif is_barcode_available %}
"mpn": {{ current_variant.barcode | json }},
"productId": {{ current_variant.barcode | json }},
{%- endif -%}
{%- if review_rating %}
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "{{ review_rating }}",
"reviewCount": "{{ review_count }}"
},
{%- endif %}
"image": {
"@type": "ImageObject",
"url": "https:{{ product.featured_image.src | img_url: '1024x1024' }}",
"image": "https:{{ product.featured_image.src | img_url: '1024x1024' }}",
"name": {{ product.title | json }},
"width": 1024,
"height": 1024
}
}
</script>

{%- assign product_thumb_size = '180x' -%}
{%- assign product_zoom_size = '1800x1800' -%}
{%- assign product_image_size = '620x' -%}

{% case image_container_width %}
{% when 'small' %}
{%- assign product_image_width = 'medium-up--two-fifths' -%}
{%- assign product_description_width = 'medium-up--three-fifths' -%}
{%- assign product_image_size = '480x' -%}
{% when 'medium' %}
{%- assign product_image_width = 'medium-up--one-half' -%}
{%- assign product_description_width = 'medium-up--one-half' -%}
{%- assign product_image_size = '620x' -%}
{% when 'large' %}
{%- assign product_image_width = 'medium-up--three-fifths' -%}
{%- assign product_description_width = 'medium-up--two-fifths' -%}
{%- assign product_image_size = '740x' -%}
{% endcase %}

to this code what changes need to be done to avoid warnings

 

0 Likes
Highlighted
Excursionist
50 0 3

can you please tell what is the solution to resolve the warnings

0 Likes