How do you automate schema insertion?

Joined
Dec 11, 2018
Messages
254
Likes
320
Degree
1
I was just wondering if there's a consensus on an "optimal" way to automate schema insertion for a content site. I mean going beyond the basic Yoast stuff and adding:
  • F.A.Q. Schema
  • Product review schema with star ratings
  • etc.
I'm looking at SEOPress & WPSchema plugins, both of which are running Black Friday sales right now. I'll do some more research to decide whether they're worth it and post the findings in this thread. SEOPress is looking particularly lucrative, as even the free version seems to be an upgrade from Yoast.

Anyway, feel free to share your experience and the methods / tools you use for schema.
 
Yoast has an FAQ block now with Schema in it, for Gutenberg. They also have an API where you can add any type of Schema you want, but that's kind of a pain when out-of-the-box solutions exist.

I've not used either of those plugins you linked, but I did just explore both sites so I could learn more about them. SEOPress seems like it covers everything WPSchema covers, minus a few types like "course, book, software application, video object" but SEOPress has "custom schema" you can build.

The other bonus of SEOPress is that it can replace Yoast entirely and claims not to be full of ads and nag-ware, which Yoast is.
 
I ended up going for the SEOPress Pro. I haven't tested it out fully yet, but even the looks (SERP preview etc.) are better than Yoast. Not to mention the lack of annoying ads.

They have a $20/year BF deal running still, but I don't know how long it's gonna last. Unlimited sites.

It seems to be the best one-stop SEO/Schema solution out there right now. By the way, I also found some free plugins (here and here) that claim to get the job done. But I'd rather shell out $20 and have everything in one place with guaranteed updates & compatibility.

As Ryuzaki noted, for F.A.Q.-s you have the Yoast custom block, and a bunch of other "custom block" plugins that will do the same thing. You could probably also create your own custom block with ACF if you wanted to. So there's a lot of flexibility on that one.
 
I´ve heard good things about Rankmath lately. Thinking on switching all my sites to RM :smile:
 
I´ve heard good things about Rankmath lately. Thinking on switching all my sites to RM :smile:
Good one, Rankmath seems to be the only SEO plugin that offers everything (including Schema markup) for free. A while ago there was some outrage about them faking reviews & collecting too much data on the users. I didn't delve too deep into it back then, and I don't know what the situation is right now. Maybe they've fixed the faults. Maybe it's their competitors blasting them with negative PR.

But I don't really trust them because of that Reddit thread. There was no answer to those claims from the company. The plugin seems to work well for most people, though.
 
What would be the best method to populate from ACF Fields?

I tried a bunch of methods with Elementor and dynamic insertion, but the div info got stripped for some reason, when inserted into Elementor templates.

Seems too complicated, should be easy to just add with a shortcode, but alas no.
 
It has to be automated for this particular project.
What type of schema, and what format - JSON-LD?
Writing custom Elementor widgets is pretty straight forward, and is the way i would do it.
But its probably possible with a combination of the html widget and acf shortcodes if you wanted to go that route.
 
I got it to work with a ACF shortcode and dynamic TEXT elementor block. For some reason, Wordpress doesn't convert shortcodes in HTML widgets or elementor blocks.
 
In Wordpress, I add it into the theme via hooks and populate it with I.e. post date, updated date, excerpt, etc.

You can have multiple schema blocks too, so for articles that are more specific (reviews, recipes ...), I either do the same as above, but on post level with ACF or just hard code them on that particular page (if it's just a one-off).

I always use JSON LD btw, as I feel it's cleaner to de-couple the schema from content (content is just content, text, images, basic formatting - but holds no logic).
 
Back