Forum Replies Created
-
AuthorPosts
-
Nathan RiceMember
I believe we have a fix for this. We're just testing to make sure it fixes things and doesn't cause other problems. Expect a 2.5.2 release today to resolve this.
Nathan RiceMemberImages that are inserted into the content of a post will need to have that property added manually. Genesis doesn't generate the markup for anything in the post content, so that bit is up to you.
Nathan RiceMember@emmtre
I'll paste my email content here for others to see, RE: breadcrumbs:That's right ... but I think that's the way it's supposed to be.
The difference is that on pages (anything that doesn't get a schema.org/Blog type), itemprop="breadcrumb" isn't valid. So we have a conditional that unsets it. My guess is that when this itemprop is missing, the BreadcrumbList gets orphaned back to a top level element, rather than a sub-element of WebPage.
I'm not sure which is preferred, but breadcrumbs are a relatively new to Schema.org, so I imagine they'll get that worked out at some point. 2.1.x had no support for Breadcrumb lists, so 2.2 is a positive step, even if it's not necessarily perfect.
===
As for the BlogPosting issue, this happens for any use of the blog page template, and I believe the reason is that the query we do for posts is not the main query. We have a conditional in our filter that prevents schema from being added to posts that aren't part of the main query (for various reasons).
I'm honestly inclined to not worry about this. We want to discourage the use of that page template anyway, and if I can manage it, I'll get rid of it completely.
Nathan RiceMemberWow, good catch. Looks like we're using that property all wrong. In fact, we probably shouldn't be using it at all. I'll fix it.
Nathan RiceMember@Brad
I think you need to try to modify the classes ONLY when they need to be modified. If you have a GH repo for this plugin, I'd be happy to try to submit a PR for this.Nathan RiceMember@emmtre
You should have access now. Let me know if you don't receive the invite. [email protected]If you can avoid using the Blog template, that would be my recommendation. I'll be honest, making the conditionals work 100% of the time in all the various scenarios (for instance, create page > assign blog template > make blog page the homepage ... weird setups like that) is incredibly difficult.
It should probably still be safe to use the microdata manager plugin, but it's totally possible that the plugin may cause problems. A quick look at the code gives me pause ... it basically takes over and overrides all the default Genesis microdata for main, entry, entry-title, and entry-content with no conditionals. Could definitely be a problem.
Nathan RiceMemberFirst of all, let me know if your plugins are full featured SEO plugins. I can add them to the list of plugins we detect and use to turn off our SEO features.
But if not, and they can be active alongside Genesis SEO, it sounds like there's a bit of a conflict between our WebSite schema. To fix this, you can either disable our output altogether by unhooking our code (no performance issues, no real risk), detect Genesis is active and disable your output for this bit of schema, or I guess you could do a combination of both and use our markup API to output the right schema to the
<head>
element.It's up to you, but if it were me, I'd go with option 1, mainly because it's the least amount of work for you 🙂
Here's the code to disable it.
remove_action( 'wp_head', 'genesis_meta_name' ); remove_action( 'wp_head', 'genesis_meta_url' ); remove_filter( 'genesis_attr_head', 'genesis_attributes_head' ); add_filter( 'genesis_attr_head', 'genesis_attributes_empty_class' );
Nathan RiceMember@emmtre
I've gone through and committed fixes for all the stuff you brought up. If you would like access to the Github repo, I would love to have you in there to take a look at the fixes to verify they're working right for you.As for the breadcrumb schema, it looks like the only difference is that we mistakenly put
itemprop="url"
on the anchor, and it should beitemprop="item"
instead. I've fixed this in github.With regard to the blog page template and
mainContentOfPage
, we have a conditional in the code that is supposed to explicitly prevent this. And on my local install, this doesn't seem to be happening for me. Can you give me more details about what steps I can take to recreate this on my site?Nathan RiceMemberAnd can we expect full http://schema.org/BreadcrumbList microdata markup?
This is what I get when I test against my site. Is there something missing?
Nathan RiceMember1. That's a valid point. I don't think it'll hurt anything for the time being, but that's definitely something we can solve.
2. Hm, that wasn't intentional. Thanks for pointing that out.
We have a markup API that we use to add those attributes to HTML elements, so the mechanism to remove it (or rather, conditionally add it in this case) is already there. I must have just forgotten to put in the conditional.
And since other plugins like Yoast SEO and WPSSO puts the microdata in the there are now conflicts.
You're 3 for 3 on this one 🙂 Looks like we need to add you to the Genesis Github repo to QA for us on the next development cycle!
Again, it was my intention to remove this if an SEO plugin was active, but it look like I forgot. I'm creating an issue in GH now so this can all be fixed in 2.2.1.
Nathan RiceMemberLet me clear some things up for everybody ...
1. Using
itemscope="itemscope"
is perfectly fine, as far as I know. My site, http://nathanrice.net/, throws no errors with this. The only errors are in regards to missing images for blogPosting (not invalid, but an image is required if you want a rich snippet in search results pages).Feel free to test yourself:
https://developers.google.com/structured-data/testing-tool/2. Schema.org microdata in the
<head>
usually has to do with information about the site. In the case of the new markup we added in 2.2, this has to do with the http://schema.org/WebSite property. You can read more from Google here: http://googlewebmastercentral.blogspot.com/2015/04/better-presentation-of-urls-in-search.htmlThis code, by the way, is only added on the homepage. For obvious reasons.
3. Page types (Blog, BlogPosting, Article, etc.) are still there. Look on the
<body>
and<article>
tags. These are not mutually exclusive to the WebSite property.Nathan RiceMemberNeither of those sites look broken to me. If you have a site that isn't live, please leave the a11y features turned on so we can see what the broken menus look like.
Nathan RiceMemberSame goes for anyone else. If you are experiencing this issue, and would like to test a fix, please email me and I'll send you the updated ZIP.
Nathan RiceMemberMallina.Studio,
Can you please email me? [email protected].I'd like to send you a copy of a fixed version of Genesis that you can test on your site to be sure the solution we wrote fixes the problem for you.
-
AuthorPosts