There are three keywords going on here, all of which have specific meanings, and none of which are actually what we’re talking about. Still with me?
The first: all in one. This doesn’t seem like a unique keyword at first glance, but those well-versed in SEO and in WordPress plugins will recognize it as the name of one of the most popular SEO plugins available, the other being Yoast. The plugin we’re talking about today is not, in fact, related to the all in one SEO pack. It’s by a different developer and it’s open-source via Github.
The second: Schema.org. Schema.org is an initiative launched in 2011 by the top global search engines, mostly Google and Bing, but with Yahoo and Yandex involved as well. The goal was to create a data structure that would be supported as standard on a global scale, specifically for search. In their own words, it is a “collaborative, community activity with a mission to create, maintain, and promote schemas for structured data on the Internet.” It can be found, reasonably enough, at schema.org.
This one is actually relevant, though we’re not talking about schema.org directly. Still, it’s a good idea to know how it works, at least in general. There is essentially one common vocabulary that can be used with several different types of encoding, including RDFa, Microdata, and JSON-LD.
Essentially, Schema.org markup allows you to specify bits of data and what they mean. For example, if you created a simple website with the title, author, and ISBN of a book in a table, you would have three entries that look more or less like this:
With, of course, extra data surrounding it to make it a proper HTML table. That’s basic code, with each piece of data in a cell. The thing is, Google or another search engine parsing it doesn’t necessarily know that it’s a book title, author, and ISBN. With a large index, the search engine can cross-reference to find out that the title is valid, the author has written other works, and that the number is an ISBN, but that requires having seen the data elsewhere as well.
With Schema.org, there are flags in the code to identify what the data actually contains. For example, with RDFa coding, you would have lines like this:
The additional line tells the search engine that the page is using Schema.org markup and to look for it. It also specifies that the type of entity, in this case a book, that the data is about. Then each table data tag includes a flag for what data is contained in the cell; the name of the work, the author, and the ISBN number.
The above is quite simplified. You can see all of the data relevant to books here. That’s just one type of entity you can specify with Schema.org; there are a lot more. It’s all quite complex, right?
Well, that’s why this is a relevant keyword to the plugin we’re discussing. It’s a plugin designed to make using Schema.org markup on WordPress easier. But wait! There’s a third keyword we’re talking about.
The third: Rich Snippets. When you run a Google search, you see a list of search results that include a title in blue, a URL in green, and a description in gray/black. That’s Google’s default look, right?
Well, sometimes you’ll see data presented in another way. For example, if you were to do a search for The Force Awakens, you will see a box at the top that shows dates, theaters local to you, and showtimes for those theaters. You will also see a box off to the side with a whole lot of data on the movie, from promotional images to the ratings on IMDB, Metacritic, and Rotten Tomatoes, to the Wikipedia summary and the data about director, actors, composers, writers, and all the rest. There’s a lot of data there, and it’s all structured. That’s all data that is provided by Schema.org markup.
There are simpler versions of this too. For example, if you run a search for a food item, you’ll often see results from recipe sites on how to make it. In addition to the standard title/url/description, you will see things like the star rating of the recipe on the site, the prep time, and the caloric content of the food item. Again, this is a rich snippet provided with data from Schema.org. This is all part of Google’s structured data initiative.
So, you can see where each of those individual keywords is relevant. When you put them all together, though, you end up with something else entirely. You end up with the All in One Schema.org Rich Snippets Plugin for WordPress.
The plugin itself was developed by two authors, Sujay and Nitin Yawalkar. It is maintained on Github and published to the WordPress plugin directory. Links to both are higher in the article.
The plugin essentially integrates Schema.org rich snippets in a user-friendly way. It’s designed to let you plug in data and have the data flagged in the right way, so Google and the other search engines can generate a rich snippet for you rather than leaving your search result standard. This increases visibility and organic traffic because a rich snippet is more attractive than a standard snippet. On a page of search results without Schema.org integration, your rich snippet stands out. On a page full of them, not having one yourself will doom you to obscurity, even with a high search ranking.
This plugin specifically only supports a limited number of the Schema.org content types. To be precise, their list is limited to reviews, events, people, products, recipes, software applications, videos, and articles. These are the primary and most common markup content types, but they are by no means all of the available entries, of which there are many.
This means that it’s only valuable for a limited selection of websites, but there are a lot of websites that fit in those selections. Any site that blogs about cooking, lifestyle, and recipes, can use this plugin and Schema up their site just fine. The same goes for software review sites, video aggregators, and the like. You will note, though, that books is an absent Schema type, as is businesses, and a lot more.
The plugin is fairly popular, with a 4.3 out of 5 star rating, from an accumulated 89 ratings. There are over 30,000 active installs. On the broad scale of WordPress sites that’s not a lot, but it’s still more than many useful plugins have.
Strike #1 against the plugin is that it hasn’t been updated in over a year – since September 2014, to be precise, according to the last update on the Github. Normally, I wouldn’t recommend a plugin that isn’t kept up to date, but it isn’t like Schema.org is changing rapidly or anything. All this does is add well-verified code to your site. Unless WordPress changes something to make the plugin incompatible, it should be fine in almost every instance.
The problem this brings up, though, is that the plugin isn’t adding support for other Schema types on an ongoing basis. I know it doesn’t take over a year to code in support for another media type as simple as books or movies.
This also means the plugin is not actively supported. There are several recent support threads on the WordPress support forum, none of which have responses from the plugin developers. This brings up one tangent that I shouldn’t dive into, but will; entitlement. One of the most frustrating things to see is when someone defends a lack of support by saying “it’s a free plugin, why do you think you deserve support?” Someone finds a highly rated plugin and can’t get it to work, so they ask for support. They don’t get it. To then be told that their desire for support is undeserved entitlement and that they should “learn to code, otherwise [they] have on right to complain.”? To me that’s obscene.
Look, if you develop a plugin and no longer wish to support it, that’s fine. No one wants to be tied down with a project that takes a lot of time for no returns ten years after it was relevant. The solution is to just say the plugin is no longer supported! Hand it over to someone who will support it, or just close it down. Don’t just abandon it.
And to all of those commenters out there who berate someone for wanting assistance getting their software to work, shame on you. It’s a support forum; offer support, not insulting and demeaning behavior.
Plus, one of the commenters on that support thread has a “simple” solution to the problem the original poster has, which only involves using a functions editor and fixing the plugin code. That’s not a simple fix! People who want to use a plugin to manage Schema.org data structures don’t want to have to dig into code to do it; if they did, they might as well add the structures manually.
This does all bring up strike #2 for the plugin, which is the lack of, well, functionality. The fact is, in the year since the plugin was last updated, Schema.org DID change. It’s a simple change that can be made with edits to function.php, but it’s still a code change a user would have to make manually if they wanted to use the plugin without issue.
The fact is, if you want to use All in One Schema.org Rich Snippets for WordPress, you need to use an updated fork. The most recently updated fork is a series of changes found here. You will need to download and replace the changed files in order to make the updated version of the plugin out of parts.
This is less than ideal for a simple install-and-profit plugin.
That said, when the plugin works, it works fine. It does exactly what it says it does, which is accurately implement Schema.org data structures on certain types of pages on a WordPress blog.
There is also a bit of a rocky history with the plugin. Some people monitored how the developers would add and remove various features, seemingly at a whim. This screwed over a few sites, though admittedly not many. However, since the developers are pretty well done changing the plugin, I think we can safely ignore that as an issue.
On the plus side, installing the plugin – once you have made the file substitutions or code edits – is easy enough, and using it is dead simple. All you need to do is set the Schema from a drop-down of supported Schemas, then fill out the data.
The down side is that rather than allowing you to add Schema to the existing content of the post, you have to add it to a summary box at the end of a post. While effective and suggested by Google, some people don’t like the look of this box and would prefer an alternative.
If you don’t want to use a plugin you need to edit in order to get working, or if a plugin that hasn’t been updated is a deal breaker for you – as it should be for most of you, just in general – there are alternatives.
WP Rich Snippets is the first one on the list. Unlike All in One, this plugin has been kept up to date. Also unlike it, WP Rich Snippets is not a free plugin. It’s easy to set up, it has deep documentation, it has active support, and it’s translated into several other languages. It can also be expanded with extensions. The add-ons include data tables, software spec tables, location markup, a customizer, and a handful of others, a dozen in total.
The down side is the price. For $69, you get the license to use it on one site for one year. You can continue to use it if you wish after the license expires, but you won’t have access to support or plugin updates. On the plus side, renewal is 40% cheaper when your license expires. If you want to purchase the plugin straight up, with unlimited site licenses, unlimited support, and updates for as long as updates exist, you will need to buy the Ultimate tier, which is $399. Quite a pretty penny, but worth it if you have a number of sites or don’t want to deal with annual fees. Additionally, only the $199 and $399 tiers include the add-ons.
SEO Ultimate is another option, and it’s a free plugin. However, it’s also a full SEO suite. If you’re already using the All in One SEO pack or Yoast’s SEO plugin, you’re not going to have a good time trying to get this one working. That said, if you want to make the change, SEO Ultimate is a good SEO plugin.
Speaking of, Yoast SEO and the All in One SEO pack both support schema data markups, though you may have to pay for the pro versions to get it.
At the end of the day, there are many ways to implement Schema.org snippets on WordPress, up to and including doing them manually. Some are less ideal than others, but they all work if you’re one of the core primary types of Schema data sets. If you’re using one of the more exotic sets, though, you may have to use an out of date plugin or pay for one that does what you need.