: Rich Snippet/Structured Data Testing Tool errors I try to create rich snippets for my blog posts, and after I write my articles, add images, I fill in all the data in the Rich Snippet plugin.
I try to create rich snippets for my blog posts, and after I write my articles, add images, I fill in all the data in the Rich Snippet plugin. Then I do Markup through the Webmaster Tools. (So all the data is there, Title, Author, Image etc)
I have a question here: When I am done with the marking, I export the HTML code, and try adding it to the "Text" console, then I run the code through the Structured Data Testing Tool. Is this the right way to do it?
The results from the Structured Data Testing Tool always throw the same errors:
datePublished - missing and required,
headline - missing and required
Breadcrumb 3 (url - missing and required)
image - missing and required
I have tried everything I could find, changed few Rich Snippet plugins, though I think it can be something in the template.
Get the raw HTML code here
More posts by @Martha676
2 Comments
Sorted by latest first Latest Oldest Best
It's actually pretty straightforward - the breadcrumbs error is because you marked up the last (current) element as breadcrumb. However the requirement is to be link also, as the previous breadcrumbs. You have two options:
1). Add the url property to the last element too. It will be link to the article itself, will pass the validator (recommended):
instead of
<span property="v:title">Here Is How To Get Rid Of A Hickey (No.13 Is A Lucky One)</span>
make it as the rest:
<a href="http://www.myhealthybase.com/how-to-get-rid-of-a-hickey/" rel="v:url" property="v:title">Here Is How To Get Rid Of A Hickey (No.13 Is A Lucky One)</a>
2). Remove the breadcrumb markup from the last element and leave it as a simple text.
Overall - using some WP plugin, like the Wordpress SEO by Yoast will fix that for you, it seems the error is because the current theme/plugin you use is not coded properly.
The BlogPosting issue is simple too - just add an itemprop to the image itself (itemprop="image"). The image is required for BlogPosting microdata.
The third issue is false alert (or you already fixed it), re-test your pages and you'll see it disappearing.
The Errors
Let's have a look at the error messages.
1. Article Mark up
The date and headline information are missing.
The first is not mark up in your code, the latter is misplaced.
2. Breadcrumb Mark up
Your breadcrumb is missing the last URL which apparently is the post URL.
3. BlogPosting Mark up
The BlogPosting mark up does not contain a URL for a post thumbnail.
The Code Chaos
Now the more complicated part.
I can not figure out where the mark up is coming from. You mentioned that you have
changed few Rich Snippet plugins
but nothing worked right.
Two things go hand in hand here: the way the plug-in works and the way your theme works.
To keep it short: I'd recommend using JSON-LD instead of in line mark up.
Why?
Because it makes it easier to identify mark up issues and testing.
What's the difference?
You are using in line mark up, which is fine, but has some limitations if your pages code gets more and more complex depending on the theme you're using.
Article markup works like this:
<div itemscope itemtype="http://schema.org/Article">
<span itemprop="name">How to Tie a Reef Knot</span>
by <span itemprop="author">John Doe</span>
This article has been tweeted 1203 times and contains 78 user comments.
<meta itemprop="interactionCount" content="UserTweets:1203"/>
<meta itemprop="interactionCount" content="UserComments:78"/>
</div>
As you see, all the data concerning the Article item has to be placed within the <div> containing the itemtype specification. If Something is placed outside this div the data is literally lost.
What happens in your case is that some information is misplaced and can not be connected to the right itemtype, as the elements containing the information are lost somewhere in code. They are hard to find and even harder to fix.
Utilizing JSON-LD creates an additional piece of code in your HTML document, which for example looks like this:
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "Article",
"author": "John Doe",
"interactionCount": [
"UserTweets:1203",
"UserComments:78"
],
"name": "How to Tie a Reef Knot"
}
</script>
This type of code snippet can be placed anywhere, but is most likely placed at the end or the top of the html code.
As you can see its everything in one place, easier to identify and to fix if something is missing.
If you are fine with coding you can find a good how-to on utilizing JSON-LD data in Wordpress here:Implementing JSON-LD in Wordpress on builtvisible.com
If you rather like to have a plug-in doing the work for you look out for something like this: JSON-LD for Article PlugIn
try to deactivate your RichSnippet plug-in and make sure no schema.org data is provided by your theme that may interfere with the JSON-LD data.
Next install the JSON-LD plug-in and configure it the way you want.
Test the code and be happy. :)
If you like to go with your plug-in, you may look for help on the plug-in page or in Stackexchange's Wordpress section
Sorry that there is no simple "click this then everything works fine"-solution, but I hope it helps you though.
Terms of Use Create Support ticket Your support tickets Stock Market News! © vmapp.org2024 All Rights reserved.