Back in February, I wrote about Remove Empty Shortcodes 1.0.0 in which the plugin includes the admin scanner, a real test suite, and automated deployment to WordPress.org.

Then a bug report was submitted on the wp.org forums leading to 1.1.0.
Software Engineering in Web Development, Backend Services, and More
Back in February, I wrote about Remove Empty Shortcodes 1.0.0 in which the plugin includes the admin scanner, a real test suite, and automated deployment to WordPress.org.

Then a bug report was submitted on the wp.org forums leading to 1.1.0.
Back in March 2025, I wrote about reviving Remove Empty Shortcodes after letting it collect dust for a few years. At the time, I’d rewritten it, added support for multi-line shortcodes, and pushed it back to the WordPress plugin repository.

That was version 0.6.0. This is 1.0.0 and it’s a much more significant release.
Continue readingIn 2019, I wrote a WordPress plugin that’s primary feature was to prevent unused shortcodes from rendering in the content whenever a page was loaded.
It worked well enough for a little while. Then time passed.
During that time (and for one reason or another):
Just recently, I came across the problem of rendering orphaned shortcodes again and I noticed someone had left an issue in GitHub. So I decided to rewrite the plugin, tag a release on GitHub, and release it into the WordPress plugin repository.

When I first wrote this plugin, I had stopped using Restrict Content Pro but the shortcodes were still littered throughout various posts in my archive. And this exposed a larger problem with shortcodes as a whole:
If a user installs a plugin that uses shortcodes and then deactivates the plugin, the shortcode will still render in the content of the post.
Obviously, this muddies the content for readers by leaving artifacts of code that’s no longer running. So rather than query the database for shortcodes that were orphaned in my content or just remove a single plugin’s shortcodes, it seemed easier to do something else: Automatically remove empty or inactive shortcodes from my WordPress content while preserving the original database entries.
And that’s what this plugin does. Specifically, it intercepts the content before it’s rendered, removes the shortcodes, then passes the rest of the data back to the main process to render the content.

This ensures that if you ever reactivate the plugin, the shortcode still exists and will work as intended.
As of this post – and this version – the plugin only works on post and page post types.
You can read all about the details for the plugin (including the FAQ) oin the Plugin Repository but here’s the gist of information relevant to this post:
The plugin checks your content for shortcodes when pages are displayed. If it finds shortcodes that:
Then it removes the shortcodes from the content before rendering it in the browser.
It’s been a long time since I’ve released a plugin in the WordPress Plugin Repository (regardless of how large or small) let alone bothered writing about one on this site.
But since this is one of those things that I’m using on a site with over a decade and a half of content, it may be useful for someone else, as well.
And yes, there additional things that thing plugin could do and maybe it will but that will largely depend on adoption or my own needs or both.
A couple of weeks ago, I shared a small plugin I was working on, Remove Empty Shortcodes, that will – as the name implies – remove empty shortcodes from posts and pages where shortcodes are no longer present.

Today, I’ve tagged another release of the plugin and its available for download on GitHub.
Continue readingLast week, I discussed everything that went my decision on retiring site memberships. For those who were members (or even read the initial idea), you may recall that I was using Restrict Content Pro to power the site.
When retiring the memberships, I wanted to make sure I was able to maintain the integrity of all of the posts that I’d published simply without the shortcode that comes with RCP.
What started off as a simple plugin to remove the RCP shortcode turned into a plugin to remove all empty shortcodes. I’m opting to open the plugin’s repository so anyone can access it (or contribute issues, code, or create their own fork from it).

At the time of this writing, the plugin is at 0.4.0 so there’s not much to expect. But I enjoy reading the what and why other developers do in their projects, so I’m going to do so with Remove Empty Shortcodes.
Continue reading© 2026 Tom McFarlin
Theme by Anders Noren — Up ↑