Develop WooCommerce

The official WooCommerce development blog

WooCommerce 3.0.2 fix release notes — April 12, 2017

WooCommerce 3.0.2 fix release notes

The WooCommerce 3.0.2 fix release is now available. You can download it from or as an automatic update in your administration panel.

This release fixes several issues we’ve had reported and found ourselves whilst monitoring the support forums. The full changelog is below.

= 3.0.2 - 2017-04-12 =
* Fix - Removed required states for GP, GF, KW, LB, MQ, RE and YT countries.
* Fix - Made cache in the [products] shortcode respect filters from plugins.
* Fix - Added missing woocommerce_cross_sells_columns filter.
* Fix - Fixed shortcode rendering on the shop page.
* Fix - Fixed incorrect sale dates when bulk editing variations.
* Fix - Fixed calls to wc_reduce_stock_levels in PayPal and Simplify gateways.
* Fix - Exclude "location" meta when reading customer meta data.
* Fix - Updated emails/email-addresses.php, emails/email-order-details.php, content-single-product.php, checkout/form-shipping.php, myaccount/form-add-payment-method.php, myaccount/form-edit-address.php, myaccount/form-lost-password.php, myaccount/form-reset-password.php, myaccount/orders.php and myaccount/view-order.php template version to 3.0.0 since they had changes since 2.6.
* Fix - Fixed default behavior of variation tax classes when originally set to "parent".
* Fix - When duplicating products, do not copy slug, append "(Copy)" to the product name, correctly copy all meta data, and prevent children of grouped products being duplicated too.
* Fix - Removed duplicated items when outputting cross sells on the cart page.
* Fix - Fixed output of default "add to cart" text of external products in loops.
* Fix - Fixed backwards compatibility of guest checkout rules when being altered by plugins directly.
* Fix - Use correct thumbnail sizes for variation images in the new gallery.
* Fix - Fixed captions on thumbnails and main image in the new gallery.
* Fix - Trigger wc_fragments_loaded after add to cart fragment refresh.
* Fix - Download permissions; Convert dates to timestamp on read so UTC is preserved.
* Fix - Fixed notices under PHP 7.1 when sorting products by name (numeric).
* Fix - Added additional checks to ensure objects are read before using class methods to avoid errors.
* Fix - Removed legacy suggest.js code which was causing JS error on bulk edit.
* Fix - Fixed warnings on the "Lost password" page and when loading a product with invalid attributes.
* Fix - Made background emailer update the queue after a successful send so duplicate mails are less likely.
* Tweak - Improved automatic variation name generation.
* Fix - Typo in flexslider_enabled option in new gallery script.
* Fix - woocommerce_notify_low_stock and woocommerce_notify_no_stock options had no effect.
* Tweak - For downloadable files, only validate file type when dealing with relative paths.
* Dev - Added product visibility terms to system status report to help debug.
* Dev - Introduced woocommerce_admin_order_date_format filter to replace missing post_date_column_time.
* Dev - Introduced woocommerce_update_customer_args filter to prevent updates to user objects if needed.
* REST API - Fixed saving of variations in legacy REST API v3.
* REST API - Fixed backwards compatibility of line_items meta in legacy REST API.

If you spot any further issues, please report them to us in detail on GitHub so the development team can review – comments on this post are closed.

Dev Chat Summary: April 11th. — April 11, 2017

Dev Chat Summary: April 11th.

This post summarizes the dev chat meeting from April 11th. (agenda, Slack archive).

CRUD Search Helpers

  • Open Issue.
  • We need to investigate wether we can re-use WP_Tax_Query or not. Actual taxonomy storage probably won’t change when we move to custom tables. See discussion.
  • Main props should definitely be queryable.
  • Custom meta should be supported. WP_Meta_Query.
  • WP data structures are a temporary way to get us there. We know the goal is to move data to custom tables.

Product Admin UI

  • Bumped to the next chat, but a call for feedback was posted.
  • Please leave your thoughts on the open issue and we can discuss.

Importer / Exporter

  • Please provide feedback on the proposed schema.
  • Background processing classes mentioned as a concern here. We want to improve that in core.
  • Other extensions should be able to use what we have (like the Subscriptions CSV importer).
WooCommerce 3.0.1 fix release notes — April 6, 2017

WooCommerce 3.0.1 fix release notes

The WooCommerce 3.0.1 fix release is now available. You can download it from or as an automatic update in your administration panel.

This release fixes issues reported since 3.0.0 launch on Github and the support forums. The full changelog is below.

* Fix - Show catalog hidden products within grouped products.
* Fix - Fade in the gallery in if no images are set or it's custom.
* Fix - Use wc_deprecated_function in WC_Deprecated_Hooks so notices aren't output in ajax requests.
* Fix - Added back the ability to include extra items to the System Status using the woocommerce_system_status_environment_rows filter.
* Fix - Coupon category restrictions and limits for variations.
* Fix - Allow shortcodes and HTML in variation descriptions like in 2.6.
* Fix - Unset post date when duplicating products.
* Fix - Show a sale price on variable products if on sale and all prices are the same.
* Fix - Corrected download links when a product has multiple downloads.
* Fix - Prevented potential errors if the product type was not posted for any reason on save.
* Fix - Updated single-product/up-sells.php, loop/add-to-cart.php, loop/rating.php, checkout/form-billing.php, and content-product.php template version to 3.0.0.
* Fix - Included clearfixes on billing and shipping field wrappers,
* Fix - Fixed styling of logs table in some languages.
* Fix - Fixed display of variation attributes on old orders.
* Fix - Use placeholder text for external products add to cart button text if left blank.
* Fix - Fallback to home URL if no shop page is set for system status security check for HTTPS.
* Fix - For variations, pull tax status and sold individually from the parent since there is no UI to set this at variation level.
* Fix - Moved cron emails to background processing to avoid multiple sends.
* Fix - Wrapped structured data in a hidden element when added to emails.
* Fix - Missing gateway information in queued emails.
* Fix - Fixed a bug that caused pages to permanently reload if "Default customer location" was set to "Geolocate (with page caching support)".
* Fix - When forcing shipping to billing, set the shipping fields in the order itself.
* Fix - Check for invalid objects in WC_Register_WP_Admin_Settings.
* Fix - Check for error object in wc_get_object_terms.
* Fix - Removed slashes in shipping meta data on the order edit screen.
* Fix - Prevented permalink rewrites for attributes with missing names.
* Fix - Fixed saving of meta data when multiple extensions use the save_post action.
* Fix - Allow search customers by ID in edit order screen.
* Fix - Prevents session data overwriting customer data on login.
* Fix - Fixed cross-sell column display and variation support.
* Fix - Fixed variable product stock syncing on save.
* Fix - Included try/catch wrapper to prevent issues with Select2.
* Fix - Prevented a bug that deleted all variations when the product type was change from variable to simple.
* Fix - Switched to WPDB to quicker update when syncing titles for variations.
* Fix - Exclude deprecated properties when loading a customer object.
* Fix - Fixed notices while trying to order again.
* Fix - Fixed notices when $wpdb->prefix is empty.
* Fix - Prevent errors when loading a product with an invalid download file types.
* REST API - Fixed missing array declaration in CRUD controller.
* REST API - Removed extra exclude, include and search parameters from taxes endpoint.
* REST API - Fixed variation description formatting.
* REST API - Fixed incorrect attribute check in products endpoint in Legacy REST API.
* REST API - Allow variation image to be unset.

If you spot any further issues, please report them to us in detail on GitHub so the development team can review – comments on this post are closed.

Say hello to WooCommerce 3.0 “Bionic Butterfly” — April 4, 2017

Say hello to WooCommerce 3.0 “Bionic Butterfly”

Today we’re excited to release WooCommerce 3.0 (previously 2.7), dubbed the “Bionic Butterfly”, into the wild! 3.0 has been in beta since December, development since August, and has had over 3000 commits from 115 contributors.

Read on to find out what’s new!


3.0 is a major update. As always, please ensure extensions and themes are compatible before upgrading, test on a staging site if you can, and make a backup for peace of mind.

Continue reading

April 11th: First Dev Chat & 3.1 Kick-off — April 3, 2017

April 11th: First Dev Chat & 3.1 Kick-off

We previously announced that we would begin holding developer chats every two weeks with the community on our Slack. These chats will take place in the new #core channel — a channel meant to focus on the development of WooCommerce core.

Our first dev chat will be on April 11th at 16:00 UTC. Future chats will be every two weeks at the same time. Join us as we kick-off the 3.1.0 release cycle!

Here is the agenda for our first meeting:

If you have anything to propose for the agenda or related to the above, please leave a comment below.

See you there!