Today we’re pleased to announce that WooCommerce 3.5 is available for beta testing!

You can download it directly here or use our new WooCommerce Beta Tester plugin to easily test WooCommerce beta versions and release candidates.

Release highlights

3.5 is the last minor release this year. Being a minor release, all new functionality should exist in a backwards-compatible manner. Updating from any version since 3.0 should be hassle free!

Here is what to look out for in the update.

REST API v3

The latest version of the WooCommerce REST API is ready, and features new endpoints as well as improvements to existing endpoints. Some of the new features include:

  • A reviews endpoint to list, get, create, and update product reviews.
  • Date fields are now editable on the products endpoint, and the endpoint has been updated to work with the “on backorder” stock status.
  • A series of new reports endpoints to get total counts of orders, products, customers, coupons and reviews.
  • New orderby options for the products endpoint to allow listing products by price, popularity, or rating.
  • Automatic total calculations when applying/removing coupons in the orders endpoint.

More documentation around the new version of the REST API will be available within the next few weeks.

Improved copy for transactional emails

The wording of the WooCommerce transactional emails has remained largely unchanged for years. We have improved the default wording of the emails to be friendlier and more human. Improving the default content will improve the customer experience and reduce the need for store owners to do template overrides of the transactional emails.

This is the first phase of a larger initiative to improve WooCommerce’s emails and email content editing experience. Stay tuned in 2019 for more improvements.

Custom Product Tables support

The use of the postmeta database table for storing product information has been a big bottleneck when scaling WooCommerce stores. We’ve been working on migrating the product information that WooCommerce currently stores in the postmeta table to custom database tables developed and optimized for product data. This will provide large performance boosts to stores and greatly improve their scalability. In our testing we achieved a 30% performance improvement on product-heavy pages with these custom tables!

The 3.5 release will add the hooks and filters required for the Custom Product Tables feature plugin to WooCommerce. Currently the feature plugin is in beta, but it will be production ready soon-enough, and WooCommerce stores will be prepared.

In the meantime, this will make it easy to beta test the feature plugin and see what sort of performance gains your store will get. Please follow beta testing best practices and don’t test on production systems, as the custom tables plugin has the potential to cause loss of data.

Read more about the Custom Product Tables plugin, our plans for custom tables, and how to test the plugin here.

Everything else . . .

Other features include:

  • The ability to export products by category in the CSV exporter.
  • The ability to set a low stock threshold for individual products.
  • An improved payment method settings page with greater accessibility among other accessibility improvements.
  • Error logging for transactional emails using the WooCommerce logger.
  • The Action Scheduler background processing library used by the WooCommerce Subscriptions plugin is now included in WooCommerce and provides a robust, scalable background processing solution for developers. In 3.5 webhooks will be delivered using this library.
  • Numerous performance improvements.

On top of the new features, there are a variety of minor tweaks, new hooks, and fixes. We won’t go into detail here, but you can see the full list of changes in the readme if you’re interested!

Template file changes

  • All of the email templates have been updated with new wordings.
  • cart/cart-shipping.php – Improved shipping calculator experience.
  • cart/mini-cart.php – Removed unnecessary nbsp;s from template.
  • cart/shipping-calculator.php – Improved shipping calculator experience.
  • myaccount/form-edit-account.php – Add form tag hook.
  • myaccount/form-login.php – Add form tag hook.
  • notices/error.php – Run notices through new wc_kses_notice function.
  • notices/notice.php – Run notices through new wc_kses_notice function.
  • notices/success.php – Run notices through new wc_kses_notice function.
  • order/order-again.php – Refactored order again handling.
  • content-widget-product.php – Add extra check to prevent fatal errors when global $product is not a product.
  • single-product-reviews.php – Removed unnecessary aria-required attributes.

Deprecated functions and methods

No functions, classes, or methods will be deprecated in this release.

Release schedule and testing

We’re hoping to keep WooCommerce 3.5 in beta for the next 2 weeks. If you’re a developer please check extensions and themes are compatible to be safe.

Release Candidate 1 should be tagged on September 26th and will remain in RC for a further 3 weeks until October 17th which is our target launch date.

If you’d like to help us test, you can use our new WooCommerce Beta Tester plugin. We posted a nice little write-up on beta testing here which should get you started. Please read that and jump right in!

If you’d like to help translate 3.5, you’ll find it on the development branch on translate.wordpress.org.

Thanks to all of our testers and contributors!