We are pleased to announce the release of Block Visibility 2.5.0 and Block Visibility Pro 1.6.0. It’s been nearly eight months since the last major release of either plugin, and WordPress has changed a lot during that time.
One of the founding principles of Block Visibility was to look and feel as much like WordPress as possible. The plugin should be a natural extension of Core functionality and use as many native components and design patterns as possible.
Pursuing this principle was the primary focus of Block Visibility 2.5.0 and Pro 1.6.0, given all of the Editor design changes in WordPress 6.1. Substantial effort was also made to optimize various visibility controls.
Before we get into the details, please review the following upgrade notice.
Block Visibility and the Pro add-on now require WordPress 6.0 or greater. More details are below.
For those that are currently using Block Visibility Pro, please upgrade both Block Visibility and the Pro add-on at the same time.
Due to the user interface redesign and internal improvements in Block Visibility 2.5.0, prior versions of the Pro add-on, 1.5.3 and lower, are incompatible. You will need to upgrade to Pro 1.6.0 if you wish to also upgrade to Block Visibility 2.5.0.
New Minimum WordPress Version Requirement
Block Visibility and the Pro add-on now require WordPress 6.0 or greater. Being a plugin that focuses specifically on blocks, keeping up with the developments in WordPress Core is imperative, especially improvements made to the Site Editor. We want to ensure our users can take advantage of new WordPress features and components. Furthermore, the vast majority of Block Visibility users are already running 6.0+.
Block Visibility 2.4.6 and Pro 1.5.3 are relatively stable and can continue to be used if you are on WordPress 5.9 or lower. However, we strongly recommend upgrading your WordPress installation in the future, regardless of your use of Block Visibility.
Expect the minimum required version of WordPress to continue increasing in future releases. The goal is to stay at most two major versions behind the latest WordPress release.
Default Visibility Controls
Block Visibility allows you to set default controls in the Editor Visibility panel. This functionality can be helpful if you find yourself using the same controls repeatedly. A complete overhaul of visibility defaults was undertaken in version 2.5.0.
Changes to Default Defaults
Previously, the Date & Time, Screen Size, and User Role controls were set automatically whenever the plugin was activated, but you could modify these defaults in the plugin settings. Furthermore, the Hide Block and Visibility Presets controls were fixed in the panel and could not be removed unless you disabled those controls altogether.
Hide Block and Visibility Presets now function just like all other controls and can be removed. They are also the only defaults present when the plugins are activated for the first time, making the Visibility panel less overwhelming for new users.
Defaults can still be set in the plugin settings, and any defaults you had previously set will be applied after upgrading. However, don’t be surprised if the Hide Block and Visibility Presets controls disappear from the panel. Since they now act like all other controls, they are likely not included in your custom defaults. They will need to be added manually to the panel or set as default in the plugin settings.
If you remove all defaults, you will get an extremely simplified panel that matches the new WordPress 6.1 design. Just click the plus-sign icon and add any visibility control that you wish. 🙌
Defaults Cannot Be Removed
In keeping with the WordPress panel design, default controls cannot be removed. They can be “reset” using the vertical ellipsis icon but are fixed in the panel.
This functionality might at first be unwelcome for some, but it’s the way most WordPress design tool panels now work and was a feature request. It also allows for much customization.
Consider the situation where you are using Block Visibility for a client project, and they will only ever need the Date & Time, and Screen Size controls. You can set those as defaults and disable all other control. Now the client has a customized visibility panel just for their needs, and they cannot inadvertently remove either control.
However, you don’t need to use defaults. The best approach for power users is to remove all defaults and add visibility controls as needed.
Consolidated User Interface
With WordPress 6.1, many native panels were updated with a new design. In pursuit of ensuring Block Visibility looks as much like WordPress Core as possible, these aesthetic updates were made to the plugin where possible. As this work was being done, it became clear that the Visibility panel also needed a structural overhaul.
Block Visibility 2.5.0 introduces a more compact layout with a greater emphasis on iconography over buttons. While this may cause the panel to be a bit less new-user friendly, the icons mirror those in Core design tool panels as closely as possible. As users become more comfortable with the new WordPress panel design, that comfort will hopefully translate to Block Visibility as well.
As a result, the average panel height has been dramatically reduced. Combined with the work done with default controls highlighted above, the Visibility panel is much more configurable and feels closer to native WordPress.
Power users can take this simplification further by removing all help notices and control descriptions. You should be comfortable with Block Visibility before enabling it, but those that use the plugin often should find this new mode delightful. The toggle is located on the General Settings tab of the plugin settings page.
Optimization was also a significant focus of Block Visibility 2.5.0. There have been several issues related to how plugin variables are fetched, causing errors in the plugin. Everything from the plugin settings page to not loading to the Visibility panel disappearing in the Editor. These issues were rare, considering 7,000+ websites are running Block Visibility without issue, but they generally occurred on very large sites with thousands of users, posts, or products.
To address this, numerous visibility controls were rewritten to optimize the way data is fetched. Most of the work was done on the Location control in Pro and the User Role control in the core plugin.
Now when using either control, you will see that the data is fetched in real-time. Furthermore, only the first 25 entries are fetched. Typing in the select field will perform a search and refresh the fetched data.
Several minor enhancements were also included with both plugin releases. Here are a few highlights.
- Added the ability to show or hide blocks if the post has no set taxonomy terms in the Location control. (Pro)
- Redesigned the Visibility Presets manager. (Pro)
- Added loading indicator in Editor Visibility panel while settings and variables are being fetched.
- Added support for uncategorized block types in the Block Manager.
- Optimized all custom SVG icons, including those used in contextual indicators. The indicator stylesheet is now 50% smaller.
- Fixed a bug where numeric ACF fields were not being evaluated correctly.
- Fixed a bug where time intervals in the Date & Time control were not removed correctly. (Pro)
Check out the Pro Changelog or the Block Visibility Changelog for more details.
Optimization and improving scalability will continue in the next version of Pro, specifically for very large sites using WooCommerce and Easy Digital Downloads. The way product data is fetched needs to be improved, and when updated, it will resemble the recent changes to the Location control.
Next, the plugin’s documentation will be overhauled with a focus on developer resources. Block Visibility is extensible, allowing third-party developers to build their own add-ons, but there is no documentation to show people how.
More tutorials are also in the works for more complicated visibility implementations, specifically in the context of the Site Editor. Full Site Editing was one of the reasons for building Block Visibility. The applications are endless, especially with the Location control.
While the documentation updates will be ongoing, expect the next major release of Block Visibility and the Pro add-on in January 2023. If you have a feature request or have found a bug, feel free to create an issue on the Block Visibility GitHub repo.
Thank you for your interest in Block Visibility. If you haven’t already, give the core Block Visibility plugin a try. It’s available for free in the WordPress plugin repository. If you want access to every feature, consider purchasing the Pro add-on.
Until next time…
Share Your Thoughts