: How to properly implement paywalled content To avoid cloaking, I'm planing to indicate paywalled content on reviews, but I'm struggling how to format both JSON-LD and HTML: Should I add hasPart
To avoid cloaking, I'm planing to indicate paywalled content on reviews, but I'm struggling how to format both JSON-LD and HTML:
Should I add hasPart and isAccessibleForFree keywords for each Review?
(apparently LocalBusiness doesn't accept hasPart according to the testing tool)
Do I need to add the paywalled property description for search
engines?
In the HTML, I'm generating a "Lorem ipsum" description
instead to the actual text and blurring it using CSS. The blurred
text has the class paywall, will Google and other SE penalize the
site because of the arbitrary nonsense text? will description be
considered as cloaking in this case (since search engines and users
have different content)?
Below is a small example to test, there may be hundreds of reviews.
{
"@context": "http://www.schema.org",
"@type": "LocalBusiness",
"@id": "http://localBusiness.example.com",
"name": "Example",
"image": "http://localBusiness.example.com/image.jpg",
"aggregateRating":{
"@type":"AggregateRating",
"ratingValue":"3.75",
"reviewCount":"2"
},
"review":[
{
"@type":"Review",
"@id":"http://localBusiness.example.com/Review/1",
"author":"Anonym",
"name":"Review 1",
"description":"Lorem ipsum dolor sit amet",
"datePublished":"2017-07-19",
"reviewRating":{
"@type":"Rating",
"ratingValue":"4"
},
"isAccessibleForFree": "False",
"hasPart": {
"@type": "WebPageElement",
"isAccessibleForFree": "False",
"cssSelector" : ".paywall"
}
},
{
"@type":"Review",
"@id":"http://localBusiness.example.com/Review/2",
"author":"Anonym",
"name":"Review 2",
"description":"Excepteur sint occaecat cupidatat non",
"datePublished":"2017-10-19",
"reviewRating":{
"@type":"Rating",
"ratingValue":"3.5"
},
"isAccessibleForFree": "False",
"hasPart": {
"@type": "WebPageElement",
"isAccessibleForFree": "False",
"cssSelector" : ".paywall"
}
}
]
}
More posts by @Speyer207
1 Comments
Sorted by latest first Latest Oldest Best
Google notes in the cited documentation, this implementation is only possible for the type CreativeWork. I don't know, whether this kind of markup, even if validated errorfree by testing tool, is correct by design,
Not a LocalBusiness should be divided into hasPart-parts,
Your review should be marked up as having hasPart, and than as containing an array of multiple reviews,
loremIpsum in HTML would be in my opinion definitely harmful - it is a sign of a website, which isn't finally ready for publishing.
Correct, means valide, markup would be:
<script type="application/ld+json">
{
"@context": "http://www.schema.org",
"@type": "LocalBusiness",
"name": "Example",
"image": "http://localBusiness.example.com/image.jpg",
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "http://localBusiness.example.com",
"hasPart":
{
"@type": "WebPageElement",
"aggregateRating":{
"@type":"AggregateRating",
"ratingValue":"3.75",
"reviewCount":"2"
},
"isAccessibleForFree": "False",
"cssSelector" : ".paywall",
"review":[
{
"@type": "Review",
"author": "John Doe",
"datePublished": "2006-05-04",
"name": "A masterpiece of literature",
"reviewBody": "I really enjoyed this book. It captures the essential challenge people face as they try make sense of their lives and grow to adulthood.",
"reviewRating": {
"@type": "Rating",
"ratingValue": "5"
}
},
{
"@type": "Review",
"author": "Bob Smith",
"datePublished": "2006-06-15",
"name": "A good read.",
"reviewBody": "Catcher in the Rye is a fun book. It's a good book to read.",
"reviewRating": {
"@type": "Rating",
"ratingValue": "5"
}
}
]
}
}
}
</script>
Terms of Use Create Support ticket Your support tickets Stock Market News! © vmapp.org2024 All Rights reserved.