Today we are excited to announce the availability of WooCommerce 4.0. The latest release of WooCommerce has been in development since January 2020, but a lot of improvements has been in the works since 2018. WooCommerce core has had 743 commits from 21 contributors, but we should also mention a huge amount of effort from the WC Admin team and the code that now becomes a part of the core with a history of 3500 commits from 45 contributors.
4.0 is a “major” release. This means that the version is not fully backwards compatible with sites running various versions of WooCommerce 3.x. Therefore, we recommend testing the upgrade on a staging site copy before upgrading your live store and creating a backup of your code and database. Please see this guide for more details.
What’s new in 4.0?
For readers of the WooCommerce Development blog, you have probably seen the initial announcement and later regular releases of the feature plugin. With the plugin being actively used on more than 1 million stores, we now believe the WooCommerce Admin is ready to be included in the WooCommerce core to bring a set of improvements to all store owners:
- New dashboard
- New and improved reports
- Improved notification experience
- New store management tools
WooCommerce admin provides much better reporting capabilities than previous generations of reports and allows for filtering, comparisons and overview how the store is doing in terms of sales, revenue, which products are the most popular/highest-grossing, adds capabilities for improved customer management and analytics.
Please note that we’re not removing the old reports at this point. We will deprecate those at a later point and decommission them with enough notice to users and developers.
We’ve also made it very easy to export the data from the reports as csv to enable smooth interoperation with other systems.
Together with the WooCommerce admin, we’re bringing a new Activity panel with improved order management workflow and consistency between the desktop and mobile experience to all the customers.
Stay tuned for additional blog posts here that will detail how developers can extend the new WooCommerce Admin experience.
Action Scheduler 3.1
One of the underlying technologies that enabled WooCommerce Admin is Action Scheduler—the background job runner already used in WooCommerce core. The 3.1 version that we’re including in WooCommerce 4.0 is a new, more performant version of Action Scheduler which utilizes custom tables to provide a great experience even on stores with large volumes of orders and posts in the database.
Ensuring a stable Action Scheduler in WooCommerce is crucial, and we’re happy to see that more than 10,000 sites are already using it together with the WooCommerce Subscriptions 3 plugin.
If you previously experienced any problems with Action Scheduler, the migration guide for WC Subscriptions 3 might be a useful resource.
New Onboarding Experience
Starting a shop can be a complex and confusing experience, and we believe we can help our new customers get their shop up and running faster and with greater ease. Therefore, 50% of our new customers would be able to try out a new onboarding experience.
In addition to the new WooCommerce admin, you will find the following enhancements in 4.0:
- Enhancement to the Order edit screen
- Latest fixes of WooCommerce Blocks package
- Updates related to Brexit and VAT
- Improvements to email handling
- Optimizations for saving variations and Cash on delivery payment gateway
Beyond these enhancements, the release also contains some tweaks, new hooks, and fixes – all of which you can find out about in the readme.
Upgrading to 4.0
WooCommerce 4.0 is a new major version which means it’s not fully backward compatible with previous WooCommerce versions. However, the breaking change we’re introducing is only on the database level of Action Scheduler and thus the upgrade should work well for most customers. We recommend testing and backing up prior to upgrading and following our upgrade guide.
If you want to learn more about the Action Scheduler upgrade process, we recommend having a look at the upgrade guide for WC Subscriptions plugin (which also includes the new version of the same library).
There are a few post-update database upgrade routines that need to run after updating. On very large databases we recommend running the upgrade routine with the WP CLI command
wp wc update instead of through the admin interface.
If you’re a developer and missed the beta and release candidate (RC), the following information may be useful:
Deprecated Functions and Methods
countries_using_vatgot replaced by
Template File Changes in 4.0
The following template files have been updated in this release
|cart/shipping-calculator.php||Wording of Country updated to Country / Region in shipping calculator|
|global/quantity-input.php||Added placeholder attribute for the quantity input|
|emails/customer-reset-password.php||Added missing tag for the end of paragraph|
|emails/email-styles.php||Updated img CSS|
|emails/email-header.php||Set table width to 100%|
|single-product/add-to-cart/grouped.php||Added placeholder attribute for the quantity input|
How 4.0 was tested
We released 4.0 beta.1 on February 10th, 2020, which was followed by the release candidate 1 on February 26th and later by release candidate 2 on March 6th. During this time we:
- Tested upgrade from WC 3.4, 3.5, 3.6, 3.7, 3.8 and 3.9 to 4.0 as well as clean installations.
- Tested our own extensions and themes.
- Analyzed compatibility of all marketplace extensions with WC 4.0.
- Tested on the most popular hosting providers.
- Tested using the most popular premium themes.
- Performed managed upgrades for actual customers on staging sites to pick up on any conflicts or bugs before the public release.
- Tested and updated WooCommerce.com itself.