Servebolt Optimizer version 3.5

We’ve released Servebolt Optimizer version 3.5. It introduces new features as well as bugfixes.

Features

Clear site data on login

In v3.5 a new feature was added – every time a user logs in then we return a header telling the browser to clear local storage and browser cache. This is useful to ensure that cached content gets cleared for logged in users.

Support for Servebolt CDN

The plugin now supports Servebolt CDN.

Cache purging when Accelerated Domains is disabled

We have added a feature to purge all cache even when Accelerated Domains is disabled. This is useful when deactivating Accelerated Domains and doing a proper “cleaning up” by clearing all cache.

Automatic WordPress Cron setup (including Action Scheduler) (Servebolt-clients only)

We have added a feature to automatically set up the WordPress Cron so that it runs using the UNIX cron. This offloads WordPress from having to trigger scheduled tasks as well as making the process of setting it up a lot easier. Note that this feature also sets up the Action Scheduler (used by WooCommerce and other plugins) to be run using the UNIX cron.

Purge all network feature

We’ve now added a feature to purge all cache for all sites in a multisite-network. You can find it in the dropdown in the top bar in WordPress Admin.

Beta feature

Accelerated Domains Prefetching

We’ve added a new feature for users of Accelerated Domains – Prefetching of assets and menu items. This feature allows for our infrastructure to preliminary fetch the assets of a webpage and cache them in our infrastructure which results in reduction of load time. Another feature is that menu items gets prefetched as well, meaning that when you navigate to a subpage it has already been cached and is ready to be served in no time!

Bugfixes

WooCommerce product immediate cache purge on checkout

Whenever a user checks out in WooCommerce then the cache for the products in the cart will be purged. For many users this means using the queue to purge the cache of these products, but in the case of WooCommerce checkouts we now purge cache immediately regardless of whether they have the queue based cache purge active or not.

WooCommerce product simple cache purge on checkout

Whenever a user checks out in WooCommerce then the cache for the products in the cart will be purged. Due to how we purge cache a whole range of URLs might be included in the cache purging. This is because a post/page/product might be visible on the front page, in archives etc. and thus we include the front page URL, archive URL in the cache purge actions. But in the context of WooCommerce checkout and WooCommerce product we decided that a simple cache purge will suffice – this meaning that we only purge cache for the product URL, not the front page URL or any other related URL.

WP Admin markup error

The styling for the information panel used in for example the cache settings page was broken in WordPress v5.9, but this is now fixed.

Menu optimizer

We saw that the menu optimizer feature was incompatible with some WordPress-themes. The feature was therefore refactored and should now be better suited to work with most WordPress-themes.

Improved cache purge queue feature

We’ve improved the cleanup of the cache purge queue to prevent the queu from growing too big. This is done by removing all completed queue items as well as removing failed queue items that are older than 1 month.

Accelerated Domains Image Resize can only be enabled when site has access

Previously a Servebolt-client was able to enable Accelerated Domains Image Resizing even when the client did not have access to it (based on their subscription). We’ve now added a check so only eligible clients can enable the feature. Note that enabling the feature while not having access to it will result in the feature not being active. The subscription needs to be in place for the feature to work. This “bugfix” only fixes the GUI so that we communicate better to the client whether they have access or not.

Servebolt Optimizer v3.3

We’ve released version 3.3 of the Servebolt Optimizer for WordPress plugin. It introduces a couple of feature improvements and a number of bugfixes.

Enhancements

Cache purge queue origin metadata

Whenever an item is added to the cache purge queue, we now also add the origin of this event. For example a manual cache purge, or an automatic cache purge on content update etc.

Simplified cache purge

During cache purge we previously purged related URLs for a WP object (posts, terms etc.). Related URLs could be the front-page, archives etc. In some cases this caused large amounts of URLs to be purged cache for even when not needed. We have simplified cache purge in some cases – like for example during checkout in WooCommerce.

Changed name of menu cache feature

Due to confusion between Cloudflare/Accelerated Domains-cache and the menu cache feature we changed the name said feature to “Menu Optimizer”.

Bugfixes

Bugfix – WP admin bar markup error

Fixed minor markup error in the WP admin bar dropdown menu. An obsolete “target”-attribute was added to the parent div element which is invalid.

Bugfix – menu cache feature issue with filters

Whenever a 3rd party adds a menu using the filter wp_nav_menu_args, we could not cache the result due to how we interact using WordPress filters. This should now be fixed.

Bugfix – menu cache feature producing excessive amount of transient rows

The menu cache feature produced too many transients due to the way the transient key (a.k.a. cache key) was generated. Solved by making the transient key less complicated and by adding a filter so that 3rd parties can modify the cache behaviour instead.

Improved cache purging for the menu cache feature

Whenever a menu is assigned to a menu location we now purge cache for the previously assigned menu. This process prevents orphaned transient rows and help prevent the options table from getting bloated.

Bugfix – Migration error on plugin activation/deactivation in CLI-context

Whenever the plugin was activated or deactivated there was, in some cases, an error due to the database migration not being ran correctly. This should now be solved.

Bugfix – Fixed broken Cloudflare API credentials validation in form

Whenever Cloudflare was selected as cache provider in the cache purge configuration form the validation did not function. This is now fixed.

Bugfix – Fixed unhandled exceptions

Due to missing namespace, some exceptions went unhandled which again caused fatal errors in some cases. This is now fixed.

Bugfix – Could not determine if in Servebolt hosting environment from Cron-trigged CLI context

Due to absence of server variables, the system could not determine whether the code was executing in a Servebolt server environment when it was ran in CLI-context trigged by Cron. This is now fixed.

Advanced Caching options

Version 3.2 of our Servebolt Optimizer plugin introduces a couple of improvements. You can read more about the impact of this release in our 3.2 announcement post on our main site.

Menu cache performance

Loading menus is something that is done on almost any site. They are, however, almost always generated on the fly. Wouldn’t it be great if you could cache them? Using the latest version of our plugin, the Servebolt Optimizer, allows you to do just that! By caching the menu items you can decrease the Time To First Byte by several milliseconds, even if there are only a few items in your menu.

Translation performance

If you choose to use a translated version of WordPress that’s completely understandable. After all: you want your site in the native language of your intended audience. But this comes with a slight downside. Each time your site gets loaded, the translation files need to be loaded as well.

In our latest version of the Servebolt Optimizer WordPress plugin, we’ve added a feature known as the Translation Loader Performance. Using this, the plugin allows you to cache the content of the translation files, shaving off precious time when loading your site.

Full changelog

  • Improved automated cache purging – The automatic cache purge has been improved, primarily in 3 areas. Whenever a post/term gets deleted then the cache gets purged. Whenever an attachment gets updated (resized, cropped etc.) we purge cache for URLs, including all image sizes if the attachment is an image. Whenever a post gets excluded from the HTML Cache (formerly Full Page Cache) then we also purge cache.
  • Custom cache TTL per post type – One can now control the cache TTL (time-to-live) per post type. This allows for more fine-grained cache control.
  • More fine-grained access control to cache purge feature – Previously only administrators could purge cache. This is now changed using more fine-grained capability checks – administrators and editors can now purge cache, while authors can purge cache for their own posts. Contributors and subscribers cannot purge cache.
  • Better Jetpack compatibility – Previously the Jetpack Site Accelerator was in conflict with Servebolt’s Accelerated Domains. This is now fixed with Site Accelerator being disabled whenever Accelerated Domains or Accelerated Domains Image Resize-feature is active.
  • Menu cache performance feature – We’ve added a new performance enhancing feature – WordPress menu cache. This usually decreases TTFB with several milliseconds, even for menus with few items. The feature also includes automatic cache purge whenever a menu gets updated.
  • Translation loader performance feature – We’ve added a new performance enhancing feature – improved WordPress translations file loader. Whenever WordPress loads the translations from MO-files this causes a lot disk I/O. This feature will cache the MO-file using transients which in return decreases the loading time.

Control Panel v32.2

We’ve released version 32.2 of our Control Panel which introduces support for customers to change the PHP timezone to something other than UTC. You can find the new setting on the Site Settings page

UTC Setting

New Login and Rules for Password Strength

We launched our new login experience, and strengthened our password requirements. Passwords now need to have a minimum length of 8 characters, and contain both lowercase and uppercase letters as well as at least one digit.

All customers who created their accounts before the introduction of these new rules must reset their password, whether or not their old password already met those requirements.

Learn more about the change in our launch post.

Servebolt Optimizer 3.1

We updated our Servebolt Optimizer plugin to include our Image Resize add-on for Accelerated Domains and some additional features.

  • Accelerated Domains Image Resizing – This version introduces a new feature: Accelerated Domains Image Resizing. This feature will resize, optimize metadata, and cache your images on the fly. Improving load time and enhancing the user experience.
  • PHP version constraint – We have changed the required PHP version from 7 to 7.3. This means that whenever the plugin is activated in an environment running less than PHP version 7.3, the plugin will show an admin notice in WP Admin indicating the need to upgrade to be able to used the plugin.
  • Yoast SEO Premium – automatic cache purge for redirects. Whenever you add or remove a redirect in Yoast SEO Premium, the plugin will now purge the cache for the given URLs. This is useful since otherwise one would potentially need to manually purge these URLs after adding or removing a redirect.
  • Added CDN cache control header – We have now added a new header (CDN-Cache-Control) that allows for more fine grained control over the cache feature in the CDN-nodes.
  • Improved WP Rocket compatibility – We’ve improved the compatibility with WP Rocket’s cache feature so that it will not interfere with the cache feature of Servebolt Optimizer.

Servebolt Optimizer v3.0.1


Fixed issue with post exception in cache headers

The feature to exclude posts from cache was broken due to wrong order in conditions in the cache header logic. This is now fixed.


Removed priority-attribute from plugin static asset actions

Due to cases of incompatibility between themes and other plugins we removed the priority-attribute from the actions that enqueued the plugins static assets. This means that the priority-attribute falls back to the default value of 10 which should be less likely to cause issue.


Resolved issue with single file composer packages not being included in autoloader

Certain packages were not included in the Composer autoloader due to an issue in Mozart (which was needed to resolve conflicts between composer packages used in WordPress plugins). The packages originated as dependencies of the Servebolt PHP SDK, and was solved by specifically including them in the plugins composer-file. The affected packages contained polyfills for the PHP functions http_build_query and getallheaders which means that this was only an issue in environment where these functions were not available in PHP.

Accelerated Domains search spam update

Accelerated Domains has been updated to better handle search spam. This type of spam is growing and growing in the amount of requests we see. Accelerated Domains has already blocked over 100 000 search requests identified as spam.

We do this by blocking some search string queries usually identifying search spam.

If you identify any issues, please get in touch with our support.

Discontinuation of Starter Plans

As of today, we’ve discontinued the Starter and Starter Pro plans as part of our offering. If you currently have a Starter or Starter Pro subscription you can continue to use those.

The Starter plan and the Starter Pro plan are now part of our archived legacy plans. This means the Starter and Starter Pro plan are no longer available to select when downgrading or creating a Bolt.

If you’d like to change the number of sites or add storage of either Starter plan, you’ll have to upgrade to the Pro plan. You can do this from your Control Panel or reach out to our Support Team.

Introducing Node and NPM support

Today is a day of a big change in Servebolt, as we’re happy to announce the public beta release of Node and NPM support in the Servebolt Cloud. This change is one of the largest additions to our stack since we launched our Servebolt Cloud.

The goal of this release is to enable developers using the Servebolt Cloud as the infrastructure to run their build processes and similar. This means that in our release today, we do not include the possibility to run Node.js front-end applications and websites.

Beta terms

Support for Node.js and NPM is currently in public beta. This means that our SLA does not cover issues caused by Node.js and NPM, and you’re using it at your own risk.

We would, however, love to hear how you are using it, and get feedback on possible improvements for the future and public release.

Git upgraded to 2.22

Our Git feature that allows for near instant deployment of your updated code in your defined branch has seen an upgrade today. We’ve upgraded Git on all our Bolts to Git 2.22. If you’re making use of our deployment Git integration in the Servebolt Control Panel, you don’t need to change anything. Everything will work as expected.

If you’re running a Git clone yourself somewhere in the public folder, you’ll have some extra features available to you now. We’re highlighting a few:

  • Git branch got the very helpful –show-current to learn which branch you have currently checked out. This should facilitate orientation within repos, while git difftool can now run outside of repositories.
  • Users can create a branch from the merge base of two other branches, since the branch and checkout -b commands are now able to understand the triple-dot merge base syntax (e.g. git branch new A…B).  
  • git stash is now a pure C implementation, which should improve performance amongst other things.

Cloudflare APO support in Servebolt Optimizer

We have some big news for you! We have implemented Cloudflare Automatic Platform Optimization (APO) in the Servebolt Optimizer plugin for WordPress. With Cloudflare APO, you get multiple performance enhancements on your site, with just one click. One of those enhancements is HTML caching at Cloudflare’s edge, which can greatly enhance the load time globally.

Our Head of Product has written about what APO is and what it’s good for on our website.

Together with our Cloudflare Image Resize support, and smart automatic cache purge of Cloudflare’s edge cache, Servebolt Optimizer becomes even better for everyone using Cloudflare.

Cloudflare Image Resize support in Servebolt Optimizer for WordPress

We love the Image Resize feature available in Cloudflare Business. Now we have made it easier to make use of this feature with Servebolt Optimizer for WordPress.

The feature is currently released as a beta feature in the plugin, but will be available to everyone after the beta period.

Read more about how to set up and use Cloudflare Image Resizing in the feature description

Read more about the v2.1 update of Servebolt Optimizer on Github