This WordPress plugin provides site administrators with the ability to turn on and off specific post editor (Gutenberg) content blocks.
In the WordPress admin, install and activate the Block Controller plugin.
Go to the plugin’s settings page under
All blocks are on (enabled) by default to prevent compatibility issues on plugin activation.
Turn off any block that you would like to disable.
Some blocks will not be able to be disabled because they are already used by at least one post or page on the site. You can only disable blocks that are not currently in use. If a block is in use by at least one post, the number of uses will be listed next to that block, along with a link to the block audit page.
Go to the Block Audit page (under
Block Controller -> Block Audit) to see a list of all blocks used across the site, as well as their associated posts.
Contributors & Developers
“Block Controller” is open source software. The following people have contributed to this plugin.Contributors
- Adding new blocks to the list of blocks capable of being disabled. Most of them are the ones that support full-site editing.
- Fixing a fatal PHP bug that was discovered in PHP 8, where the array_merge to combine all blocks across all packages into a single array fails because the keys are also passed to the array_merge function.
- Fixing a potential fatal PHP bug in getting the block inventory, where the
is_user_logged_in()function may not be defined when the inventory function makes the call to get all posts.
- Tested for support with WordPress core 5.7.
- Changed the way blocks are disabled. Instead of unregistering blocks in the editor (which is risky if this is done on a site where that block is being used), the blocks are simply removed from the Block Inserter.
- FIX: You can actually disable the Classic block now.
- FIX: Since embed blocks are variations of the core embed block (as of core 5.6), fixed the way those blocks are disabled so they actually disable.
- FIX: Squashed PHP bugs related to recent WP core updates.
- Reorganized the list of core blocks on the settings page to be less arbitrary.
- CSS updates to the settings pages.
- A small update was needed for when the plugin is initially installed, to add a check if the DB has no disabled blocks option (because it doesn’t!).
- Initial release