So, yesterday we posted about Schema plugin being having 20,000 active installs, and how we are exciting about it. Now what? We need to go more further to the future of this plugin, we simply want to make it the best.
The Future of Schema
Last week, I’ve been looking for some feedback, but this time was outside of the scope, not limited to the contact page or wp.org support section of the plugin. So, I went to check who mentioned Schema plugin recently. I found some really cool and interesting stuff, so I am going to share a few with you since it has something effective for the future development of Schema plugin.
Here are a few points, each may present a goal, solution, or a challenge that I have to face, and trying to overcome it:
- Advanced post meta fields
- Supporting all schema.org types
- Working with a lot of data
So, let’s breakdown each of those points…
1- Advanced Post Meta Fields
Schema plugin has its own way of working with post meta, it has a built-in post meta class, this is what we use to generate all post meta boxes programmatically when needed. It also can be used by other plugins, or extension.
However, without dedicating a lot of time and resources; it’s not easy to create a super awesome post meta fields creator. I needed to create more complex fields on the fly in some cases.
I don’t want to invent the wheel in anything I do, well… That’s the point of open source.
Anyways, I’ve been looking into including one of the post meta managers or creators plugins, but didn’t know which one is best for our plugin requirements, and since we are developing schema.org related plugin, this makes it hard to choose.
We need a plugin that doesn’t limit Schema in the future, so I did some research and tested out a few plugins.
But here is what happened latter…
Last week, I landed on a blog post by Pascal Klau explaining his cool way to work with schemas using the power of Advanced Custom Fields plugin (ACF) plugin, and some additional snippets to make this possible.
Pascal’s post, and a comment made by Jonas Lundman helped me to wrap my head about the idea of using it in Schema.
So, now you know it. I am going to pick ACF, it’s so powerful, extensible, and many user trust it since it does the job perfectly. I did some tests and it seems to be working fine so far.
One issue though, it’s related to ACF’s license, we can include only the free version of the plugin, which is not going to serve our needs. So, we shall go with the pro version, but in this case we’ve got to have a paid product, this means we will have to sell a product in a form of Schema pro plugin or maybe an intelligent extension, something I would call Schema Types extension.
The Schema Types extension should be able to:
- Support for all schema.org types.
- Register custom post types if required and applicable.
- Add new post meta custom fields to be used by webmasters and SEOS.
- Allow developers to use / create their own custom fields though ACF.
- Do more awesome stuff!
Suggestions are welcome!
2- Supporting all schema.org types
This way we can keep following the schema.org tree…
Check schema.org full hierarchy.
I have a sort of vision for that. I am trying to figure out a way to add support for almost all schema.org types, this is mainly to provide professionals with necessary tools to markup their client’s site effectively. That’s why this functionality should to be reliable and stable as much as possible.
It sounds scary though! I mean thinking of all schema.org types we have to deal with, and how exactly we are going to manage the data.
To keep focused and on track; there must be a plan to follow!
Nate Harris posted a useful article about Structured Data and explained why you should implement it on your website, here is a link to his article (recommended read). I will however quote this for you here:
For WordPress users, I’ll tentatively recommend “Schema” for a quick fix to the most crucial structured data needs. My disclaimer: a lot of SEO plugins’ structured data output is thin, garbage, or accidentally damaging.
What I mean by thin: Basically, because they are plugins, these tools often work by what is “inferred” from the page rather than what is specified directly. That means that they are beholden to WordPress hooks (author, datePublished, Featured Image, etc.)… which in turn makes their usefulness dependent on the theme’s developer. And when a site’s SEO is strictly dependent on developers, things usually get missed!
I want Schema to be the tool for professionals, I want to reach a star! But at the same time… I must to be realistic! I agree with most of what Nate had to say in his article, I posted a comment on the post if you are interested.
What about Properties for each schema.org type?
We also can do the same thing for each type’s Properties, something like this in the post meta generator:
3- Working with a lot of data
There is a big challenge dealing with data! We need to be able to save and deliver several types of data, for example:
- A Business can have more than one location (we already know that!), so maybe the best way to handle this is to dedicate a custom post type for Locations, this will allow adding several different locations, then reuse these saved locations on different occasions.
- A Store should have opening times or working hours, we could just do the same thing, dedicate a post type for opening hours.
Just by fulfilling those two requirements mentioned above, we can do a lot in the future. I hope you got the idea!
What’s Next?.. The Future
I will start digging my way to find a working solution, and try to come up with a plan for 2018, I am considering releasing new plugin extensions, this will make Schema more powerful in the near future.
This is actually the fastest and more elegant way of doing it, let me know if you have another opinion.
Stay tuned, and if you have any ideas or suggestions, I would be happy to hear them.