Today we’re excited to release WooCommerce 3.5 into the wild! 3.5 has been in development since May, and has had over 1512 commits from 98 contributors.
3.5 is a “minor” release; this version should be backwards compatible with sites running versions of WooCommerce greater than or equal to 3.0. We do of course recommend ensuring your extensions and themes are compatible before upgrading, and making backups for peace of mind–see this handy guide for more details.
REST API v3
This release introduces the latest version of the WooCommerce REST API. This API has some new endpoints as well as features added to existing endpoints. Among these are:
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 introduced in WC 3.3.
A series of new reports endpoints to get total counts of orders, products, customers, coupons and reviews.
Automatic total calculations when applying/removing coupons in the orders endpoint.
New data endpoints to fetch Continents, Countries and Currencies.
Refund line items through the API.
Query sort products by price, popularity and rating.
Note: REST API v2 and other legacy API versions are still included in WooCommerce 3.5 for backwards compatibility.
Improved copy for transactional emails
We have updated the default wording of the WooCommerce transactional e-mails to make them friendlier and less robotic. The emails have had the same wording for years, so an update to the wording was due. Having better default content for the transactional e-mails reduces the need for custom e-mail templates and overrides, and it will improve the customer experience.
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.
Features for store owners
Here’s some other new features you may find useful while using WooCommerce:
You can now export products by category in the CSV exporter.
You can now set a low-stock threshold for individual products.
The payment method settings page has improved accessibility.
Features for store builders and developers
If you’re building stores for clients, or just developing on top of WooCommerce, here’s some new toys at your disposal:
The Action Scheduler library used by the WooCommerce Subscriptions plugin and other WooCommerce plugins is now included in WooCommerce core. It provides a robust, scalable background processing solution for developers. In 3.5 webhooks will be delivered using this library.
Support for the Custom Product Tables feature plugin. We’re working on custom database tables to store product data and improve the performance and scalability of WooCommerce. This release adds the hooks and filters required by the feature plugin. Read more about this here.
Support for the wc-admin feature plugin. We’re working on a modernization of the WooCommerce admin experience. This release adds the API endpoints required by the feature plugin. Read more about this here.
Many new filters and actions to increase the customizability of WooCommerce.
On top of the new features, there are a variety of minor tweaks, new hooks, performance improvements, and fixes in this minor release. We won’t go into detail here, but you can see the full list of changes in the readme if you’re interested!
Upgrading to 3.5
3.5 is a minor update and should be compatible with sites running any version of WooCommerce greater than or equal to 3.0. We still recommend testing and backing up prior to upgrading just to be safe.
Note: There are a few post-update database upgrade routines that need to run after updating. These may run for a while if you have a large amount of data in your database. 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 have somehow missed the beta and RC, the following information may be useful.
Deprecations in 3.5
WC_Form_Handler::order_again has been deprecated. The order again handling has been refactored and it is no longer neccessary to directly call the method.
Template file changes in 3.5
- 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.
How we tested 3.5
3.5 beta was released on September 12th 2018 and remained in beta until the RC on September 28th 2018. During this time we tested internally, tested our own extensions and themes, tested popular premium themes, did some managed updates for actual customers on staging sites to pick up on any conflicts or bugs before the public release, and tested the update on WooCommerce.com.
If you spot any issues please let us know on GitHub. Thanks to everyone who helped test 3.5!
A massive thanks to everyone in the community who have contributed, be that via issue reports, fixes, translation, testing, supporting other users or simply spreading the word.