Develop WooCommerce

The official WooCommerce development blog

Storefront 2.2.6 release notes — January 16, 2018

Storefront 2.2.6 release notes

Storefront 2.2.6 has been tagged for release and uploaded to WordPress.org.

Here’s what’s changed pulled directly from the changelog:

* Fix - Price slider widget styling.
* Fix - Apply styles to `a.woocommerce-store-notice__dismiss-link` instead of all links in the store notice.
* Fix - Fix hidden content when there are no reviews.
* Fix - Fixed typo in the `Storefront_WooCommerce` class, `thumbnail_columns` method description. Kudos @cryptexvinci.
* Tweak - Added vcard markup to template.
* Tweak - Improved My Account Payment Methods styles.
* Tweak - Improved the Bookings calendar styles.
* Tweak - Removed jQuery dependency. Kudos @valdrinkoshi. 
* Tweak - Added "Navigation menus" step to Guided tour.
* Tweak - Guided tour in the Customizer is now shown to all sites.
* Dev - Removed non-standard outdated CSS. Kudos @ElectricFeet.
* Dev - Removed sticky cart. See this issue for more information.
* Dev - [WooCommerce 3.3] - Support for new columns & rows option in the customizer.
* Dev - [WooCommerce 3.3] - Declare image sizes.
* Dev - [WooCommerce 3.3] - Hide search button.
* Dev - `composer.json` file. Kudos @pmgarman.

Download the latest release of Storefront here or venture over to Dashboard → Updates to update your theme from WordPress.

As usual, if you spot any other issues, please log them in detail on Github.

Performance: Switching to post_author to store order customer IDs — January 15, 2018

Performance: Switching to post_author to store order customer IDs

WooCommerce core uses a post meta called _customer_user to store the customer ID for orders. Since the meta_value field of the wp_postmeta table is not indexed, this means that all the queries that need to filter orders by customer ID are very slow.

To address this, in PR #17895, we are exploring the idea of using post_author, instead of a post meta, to store the customer ID. _ customer_user will still be populated to preserve backward compatibility.

This change will significantly improve the performance of queries that need to filter orders by customer ID.

On a test database with about 2.5 million entries in the wp_posts table and about 100 million entries in the wp_postmeta table running on a local dev machine, the query used by WC core to filter orders by customers in admin dropped from 25 seconds when using _customer_user to 0.0008 seconds when using post_author. Those numbers were retrieved using the plugin query-monitor and the two different queries can be seen in the screenshots below.

Query using _customer_user:

Screenshot from 2018-01-10 16-01-42

Query using post_author:

Screenshot from 2018-01-10 15-53-57

Although WC core doesn’t use the post_author field for orders, before merging this change, we want to make sure that it won’t break any existing extensions that could be using post_author for something else. Hence this post to share our plan with the community and ask for feedback.

Please let us know of any concerns you might have in the comments below or directly in the PR. If there are no objections, we plan to ship this change in WooCommerce 3.4.

WooCommerce 3.3 RC1 — January 11, 2018
January 16th: Dev chat #17 — January 9, 2018

January 16th: Dev chat #17

The next chat will be on January 16th at 17:00 UTC in the #core channel of the WooCommerce Community Slack. If you don’t already have access to the group, you can request an invite at the bottom of the WooCommerce developers page.

Here is the agenda for the chat:

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

See you there!

WooCommerce 3.3 beta 2 — January 5, 2018

WooCommerce 3.3 beta 2

WooCommerce 3.3 beta 2 is now available. This beta release has a whole host of bug fixes and is ready for testing! To test WC 3.3 beta 2 you can use our beta tester plugin or download the release here.

Thanks for testing WooCommerce, and if you find any bugs please open an issue!