Gutenberg arrived on the WordPress scene five years ago by now, but plugins that implement more-than-basic blocks were relatively slow in coming. Still, five years: so you might think everyone would have it all figured out by now. But no. And plugins that implement more-than-basic blocks were relatively slow in coming.
For one thing, there’s a huge percentage of WordPress users who wish that Gutenberg had never happened. Especially among WordPress professionals who feel this way, they have come to the conclusion that Gutenberg blocks are trying to be something like Elementor or Divi–and that they are failing miserably at it. With Divi, they say, they get pinpoint control over positioning, gradients, and animations.
With blocks you have nothing but the bluntest of tools for positioning, gradient controls (only recently starting to appear) are confusing and inconsistent, where available at all. And just forget about animations–none to be had. That’s the argument.
There’s something to be said for their arguments: blocks arrived to the world in fairly rough shape. Eventually, they got to be pretty good at handling blog pages and, once you got used to some of the quirks, you could put together page designs fairly quickly, provided you weren’t trying to do anything that relied on pixel-perfect control.
Just as we arrived at that point, though, the roll-out of “full-site editing” came along. Now all of a sudden we were asking blocks to carry the weight for lots of things in themes that had previously been handled in PHP templates. Now everything including headers, footers, and sidebars were built with blocks.
Well, FSE was pretty shakey out of the gate, but it’s made steady progress. And there’s been another development as well: blocks have gotten a lot better, a lot more capable, and a lot more interesting. So let’s talk about the best WordPress blocks plugins.
There are blocks (and groups of blocks) that I think are presently somewhat ahead of the curve. If you take some time to put them through their paces, you’ll see they show where blocks are headed.
So here’s my short list of the best block plugins that push you to think more broadly about what blocks can do (including things that are well beyond traditional page builders like Divi).
Greenshift Animation and Page Builder Blocks
I’m not a big fan of typical on-page animations, but they are a necessary tool in any web-builder’s toolkit and one thing that block skeptics are always lamenting is the lack of simple animations like fly ins. And it’s true that there are no animations for core blocks or any of the blocks in the more widely adopted block libraries like Kadence (no knock on Kadence, to which we’ll return in a bit).
With Greenshift, you get a bunch of new blocks over to the left of the editor, some of which give you new capabilities, some of which offer spiffier versions of some of the core blocks (from paragraph on up).
For any given Greenshift block, you’ll have some animation options. The text block (a much-fancier-than-paragraph option) gives you a number of options including looping through alternatives for a key word or phrase in your text.
The panel to the right gives you eight animation options for the replaceable section, including a nice one called zoom that sort of superimposes the new word over the old word. Additionally, you have control over the color of the replaceable section separately from the rest of the text–and this includes gradients.
On the advanced tab, you can also animate the entirety of the block, so that all the text can drop down even as the typewriter animation, to pick another option, types in the first word of the replaceable part. The effect here is way too busy, but the point is that you have a lot of options.
And the larger point is that the Greenshift group of blocks is a lot more of a Divi replacement than most of the Divi loyalists would care to admit.
This plugin doesn’t add blocks to your site, so you could argue on a technicality that it’s actually not one of the best WordPress blocks plugins. But all the same, it’s a good plugin for blocks–one that takes advantage of the architecture of blocks to add a “Visibility” panel to every block on your site. So if you only want something visible during, say, business hours, you just set it so that this is the only time this block (whatever it is) is visible. And you can place this setting on a group block to take care of whole section of a page.
I wanted to mention this plugin not just because it’s handy, but also because it’s an example of a block that behaves different ways in different contexts. I suspect we’ll see more and more of these.
Here’s another plugin that adds a panel to existing blocks on the site. It gives you the sort of controls you’d want for a membership site, and gives them to you on a fairly fine-grained basis.
You can use it to drop blocks from a page (visually) on mobile devices, for one thing. But you can also restrict views based on user role, as I’ve done here. Mere subscribers will not see the paragraph block in my example page above.
It’s the kind of thing that’s perfect for a call to action that you want non-subscribers to see, but that people who’ve already subscribed will just see as a nuisance.
Custom Blocks Creator — LazyBlocks: Make your own best blocks
I’ve liked this tool since it first emerged. It gives you an interface to create blocks without having to know the full-blown block creation process. Instead, you can build blocks exclusively using some drag and drop controls and the PHP you already know how to code with. And you can do full-speed, heavyweight blocks with this.
One point about it that might make a difference in some instances: the PHP rendering magic is accomplished by creating dynamically rendered blocks, as opposed to blocks that are pre-rendered and stored as straight-up HTML. The traditional pre-rendered approach is inherently more performant, but that’s only going to matter in certain kinds of instances (high overall volume to the site, or some kind of process that makes rendering slow but could be handled without dynamic rendering).
For the most part, though, dynamic rendering just doesn’t inflict much of a performance price–not the sort of thing you particularly notice on a typical site and not the sort of thing that’s going to send your Lighthouse scores into the dumpster.
Code Block Pro
I discovered this very recently and I freakin’ love it. It displays your code samples as if you were viewing them with syntax highlighting in VSCode. Indeed, it uses the VSCode engine. It handles just about any programming language you can think of and offers a ridiculous number of VSCode themes for different colorways.
The point here is that it’s a block that brings an enormous bunch of capability to a specialized kind of display and means that no one else has to do all the heavy lifting to get it done for themselves–exactly what blocks are about.
If you’re following the world of blocks, you may well already be familiar with Kadence Blocks, because there’s a fairly large group of block-based site developers who have chosen Kadence as their go-to set of blocks.
The Kadence package is pretty typical of a class of plugins out there that provide a whole set of blocks that more or less replace (or at least significantly augment) the WordPress core blocks.
I mention Kadence because it was out there early in providing lots of the fine-detail controls that were missing in core blocks. In the Kadence text block, you can alter settings not just for typeface and font weight, but also things like character spacing. Core blocks are, to some extent, catching up, but progress there has been uneven. And I don’t know whether the core blocks, with their emphasis on keeping things simple, will ever have all the controls for drop shadows and so on that Divi users are accustomed to. But the point is, block groups like Kadence (and others such as Greenshift) will fairly soon have all those bases covered.
Enter the Zebra
Blocks can do other, perhaps less expected things. In the context of this article, at least, I think they are the best WordPress blocks plugins for this very reason. And I’ve tried to do my part to push things along: the blocks I’m building with PeakZebra, for example, work with tables in the site’s SQL database, for example. And they handle display using React on the front end, so that it’s possible to have a table that interactively lists a table of people, for instance. Personally, I like the idea of bundling up the blocks and their presentation in extended themes or blueprints.
On the editor side of things, you can choose which columns to show, how many rows to show in the box, and what should happen when a row is selected.
Meanwhile, on the front end, the end user can shift the column order, sort by column, page through data without a page refresh, and so on. Like a modern web application, you might say…
The point is not that it’s got to be PeakZebra supplying you with blocks like these, but rather that these kinds of blocks are on the way. Maybe they’ll be custom to your particular needs or maybe they’ll be utility functions with broad application, but they’ll be doing things above and beyond text on the page.