Reputation: 41
I have an issue in Google Search Console that says that my schema is not valid for rich snippets cause of the upcoming issue (but schema is valid across validators):
Either 'offers', 'review' or 'aggregateRating' should be specified
To give some more context the schema consists of an Organization which offers products but these ones doesn't have any price, neither reviews or aggregateRating. For doing this, I used the makesOffer
as described:
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "Org Name",
"makesOffer": [
{
"@type": "Offer",
"itemOffered": {
"@type": "Product"
"name": "Product Name"
"brand": "Product Brand"
"image": "https://images.com/demo.png"
}
}
]
}
This shorted example summarizes what I'm trying to achieve, but I'm not sure if I'm using the correct attributes or entities for that. Will appreciate any help or suggestion on that.
I've been checking the schema.org documentation but I can't find how to simply attach products to an organization which doesn't have these required fields.
Upvotes: 1
Views: 81
Reputation: 8717
Well, if you want to pass Google's validator, you need to implement it as they require.
It is required to have offers
property on Product
snippet, so you could rearrange your data and switch Product
and Organization
: make Product
top level, and then express that it's offered by Organization
with offeredBy, inversed of makesOffer
(also, you need to have price
, and as it's free, you just use 0
).
Try this:
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Product Name",
"brand": "Product Brand",
"image": "https://images.com/demo.png",
"offers": {
"@type": "Offer",
"price": 0,
"priceCurrency": "USD",
"offeredBy": {
"@context": "https://schema.org",
"@type": "Organization",
"name": "Org Name"
}
}
}
Upvotes: 0