Categories
Core

WooCommerce 3.2 has been released

Today we’re excited to release WooCommerce 3.2 into the wild! 3.2 has been in development since July, and has had over 1610 commits from 98 contributors.

bionic-butterfly

3.2 is a minor update. All changes should be backwards compatible with 3.0 and 3.1 sites, but we do still recommend ensuring extensions and themes are compatible before upgrading by testing on a staging site, and making backups for peace of mind.

Greater control over coupons in admin

coupon

A popular request on the ideas board was to be able to apply coupons to existing orders. We’ve finally tackled this in 3.2!

To use this new feature, simply edit an order, click the “apply coupon” button and enter a coupon code. The re-calculations will be done automatically. You can also remove coupons from orders and have them re-calculate the totals for you!

2017-08-23 13.52.08 2

This was tricky to develop because of the way the cart and coupons were built initially, so some refactoring was needed, but we tried to implement these changes in a backwards compatible manner so extensions wouldn’t require changes. You can read more about these changes here.

Extension support version checks before core updates

update

WooCommerce 3.2 supports a new plugin header named WC Tested Up To. With this, plugin authors can specify which versions of WooCommerce have actually been tested and confirmed working prior to updates.

These advisories will be shown on the plugin update screen for future WooCommerce core updates.

Screen Shot 2017-08-25 at 1.35.46 PM

If an extension does not use these headers, there will be a warning anyway; it may be a sign that the extension is not regularly updated. If a plugin uses the term “WooCommerce” in the plugin name or description, it will be included here too.

You can read more about this feature here.

Features for store owners

everything

There are a lot of new things in this release to make your experience more pleasant; here’s a list of things you may notice whilst using WooCommerce:

  • There are now more accessible enhanced select boxes, with keyboard and improved screen-reader support available in admin and on the checkout.
  • We’ve simplified the ability to resend order details to customers by including one option to “resend” on the edit order page.
  • The wizard has been revamped to help with shipping, payment gateways, and opt-in to services like automatic taxes and shipping labels. You’ll notice this if you setup a new store on WooCommerce in the future.
  • We added drag and drop sorting on the grouped product field to control display order of products on the frontend.
  • The product category filter on the products screen has been AJAXified to avoid the need to load all categories at once. This helps resolve some scaling issues.
  • When showing search results, we’ve added back the sorting dropdown. This defaults to sorting by relevance rather than date.
  • We added a new option to control the maximum depth of categories shown in the product category widget.
  • In order to make it easier for customers who use a large number of WooCommerce.com extensions on their stores we have added some new filters allowing you filter extensions by status.
  • There is also a new notification icon under the Extension menu item, as well as the ​​​My Subscriptions tab, indicating the count of extensions that can be updated.

Features for store builders and developers

devs.png

If you’re building stores for clients, or just developing on top of WooCommerce, here’s some new toys at your disposal.

On top of the new features, there are a variety of minor tweaks, new hooks, 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!

Additonally, for both agencies and developers, we have implemented a new feature on WooCommerce.com which allows you to share your subscriptions with your clients (great for multi-site subscriptions) removing the need to connect your clients site to your personal WooCommerce.com account.

Upgrading to 3.2

3.2 is a minor update and should be compatible with 3.1 and 3.0 sites. We still recommend testing + backing up prior to upgrading just to be safe.

Note: There is 1 post-update database upgrade routine that needs to run in order to update Mexican state names to state codes. This may run for a while if you have a large orders database.

If you’re a developer and have somehow missed the beta and RC, the following information may be useful.

Template file changes in 3.2

When editing core template files we bump the version so themes know they need to update custom versions. The following files were updated in 3.2:

  • mini-cart.php – Changes to support AJAX remove from cart buttons.
  • shipping-calculator.php – Fix to state field naming and support for select2.
  • order-receipt.php – New. Moved from template function.
  • downloads.php – New table of customer downloads.
  • thankyou.php – Download displays made consistent.
  • order-downloads.php – Download displays made consistent.
  • email-downloads.php – Download displays made consistent.
  • order-details-customer.php – Download displays made consistent.
  • email-order-details.php – Download displays made consistent.
  • email-order-items.php – Download displays made consistent.
  • email-addresses.php – Download displays made consistent.
  • order-details.php – Download displays made consistent.
  • my-account/orders.php – Action buttons moved to filter.
  • form-tracking.php – Improved error handling.
  • single-product-reviews.php – Fixed invalid markup.

Deprecated functions and methods in 3.2

  • Accessing internal meta keys from a CRUD object will throw a usage notice in 3.2.0.
  • Adding fees outside of the fees API will now throw a usage notice.
  • All cart properties have been deprecated and replaced with getter methods; the ones which trigger notices include taxes , shipping_taxes.
  • Some cart methods are no longer needed. remove_taxes won’t be needed because taxes are not calculated if the user is exempt. init is no longer used. get_discounted_price is no longer used because the logic has moved to WC_Cart_Totals.
  • WC_Query::search_post_excerpt is no longer needed or used. WordPress handles excerpt searches.
  • WC_Query::remove_posts_where is no longer needed or used. WordPress handles excerpt searches.

How we tested 3.2

3.2 beta was released on August 30th and remained in beta until the RC September 27th. During this time we tested internally, tested our own extensions and 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.

Things look stable but if you spot anything, please let us know on GitHub. Thanks to everyone who helped test 3.2!

We ❤ contributors!

A massive thanks to everyone in the community who have contributed, be that via issue reports, fixestranslation, testing, supporting other users or simply spreading the word.

mikejolley claudiosanches claudiulodro jeffstieler v18 kovshenin
mikejolley claudiosanches claudiulodro jeffstieler v18 kovshenin
bor0 ramiy WPprodigy adnanlimdiwala hjoelr josemarques
bor0 ramiy WPprodigy adnanlimdiwala hjoelr josemarques
Umangvaghela nishitlangaliya DanReyLop MillerMedia thenbrent terence1990
Umangvaghela nishitlangaliya DanReyLop MillerMedia thenbrent terence1990
franticpsyx pmgarman bekarice jaydeeprami gtritchie mjangstadt
franticpsyx pmgarman bekarice jaydeeprami gtritchie mjangstadt
jb000 ethitter iamdharmesh ragulka marcozink jostrander
jb000 ethitter iamdharmesh ragulka marcozink jostrander
kloon webspecnick paulwilde javorszky websupporter aristath
kloon webspecnick paulwilde javorszky websupporter aristath
Ninos jconroy marcinbot Drivingralle jamesckemp gundamew
Ninos jconroy marcinbot Drivingralle jamesckemp gundamew
alisterscott ville6000 corsonr jdevalk Chouby tivnet
alisterscott ville6000 corsonr jdevalk Chouby tivnet
mihaigrigori rynaldos JPry aj-adl builtbylane jameskoster
mihaigrigori rynaldos JPry aj-adl builtbylane jameskoster
iickoo nyordanov JeroenSormani mitraval192 EmilEriksen JimmyAppelt
iickoo nyordanov JeroenSormani mitraval192 EmilEriksen JimmyAppelt
opportus marian-kadanka willgorham Valks helgatheviking unfulvio
opportus marian-kadanka willgorham Valks helgatheviking unfulvio
Nils-Fredrik scrobbleme saulfautley mikaelz nicoladj77 BrianHenryIE
Nils-Fredrik scrobbleme saulfautley mikaelz nicoladj77 BrianHenryIE
jamesgol shakee93 EmranAhmed atimmer urosmil grosssmutttr
jamesgol shakee93 EmranAhmed atimmer urosmil grosssmutttr
belcherj gfolin gedex farookibrahim SiR-DanieL jobthomas
belcherj gfolin gedex farookibrahim SiR-DanieL jobthomas
JustinSainton shivapoudel
JustinSainton shivapoudel

 

By Mike Jolley

I help build things at Automattic.

19 replies on “WooCommerce 3.2 has been released”

Great work!

“Some cart methods are no longer needed. remove_taxes won’t be needed because taxes are not calculated if the user is except. ”

s/except/exempt/

Like

We have had an issue with this update. Orders through all our installed gateways (Worldpay and Paypal) were going straight to processing, without checking with the gateway, or forwarding to the gateway. Rolled back to 3.1.2 and the issue ‘resolved’ itself. Not sure the cause just yet, just wanted to highlight there could be an issue for those upgrading on live sites.

Liked by 1 person

Sorry for the delay Mike. The orders were going straight to pending, without hitting the gateway at all (fake card numbers were being accepted with the Worldpay plugin, and the user was not being forwarded to PayPal), they would just immediately see the Order Completion view. Didn’t do any debugging, just rolled back immediately, so don’t have any more info unfortunately. The site does use a number of other plugins, so could be a conflict there… Will update if we still have issues in the coming week(s) when we try again. Thanks for the reply 🙂

Like

Hi Mike, Just an update on this. We are still experiencing this issue (after a full plugin update 20 mins ago, inc Woo 3.2.3), and so very likely it is due to a plugin combination. Interestingly, the order is immediately received but the items are not removed from the cart. We are currently holding out in hope that the developer notices but soon we will have to start doing our own investigations. If you like, we can give someone access to our staging environment? Thanks

Like

Too funny. I can’t even update because of that pop-up window “This is a major update, are you sure you’re ready?” with no visible YES or OKAY button, and no scroll bars to scroll down in hope there is something like an OKAY button on the bottom. Means the update is totally useless for me, because I can’t install it. Same issue with Firefox and Chrome. Please fix this and add the missing scroll bars!!!

Like

Hello,
I see this message in my logs since I upgraded to WC3.2 :
The WC_Cart->taxes function is deprecated since version 3.2. Replace with getters (WC_Cart::get_cart_contents_taxes()) and setters (WC_Cart::set_cart_contents_taxes()).
This message is wrong, WC_Cart->taxes is not deprecated, it’s obsolete ! WC_Cart->taxes doesn’t work anymore (when you want to set the value, it doesn’t change the value). It’s a bit rough, it was not deprecated in WC3.1, and now it’s obsolete in WC3.2. A deprecation phase would have been welcome…
I corrected my code in order to use getters and setters as recommended in the log message, so it’s not a problem for me anymore (it just screwed some orders, but nothing really bad). I just wanted to say that a deprecation phase is _really_ important for such things, especially when you say “All changes should be backwards compatible with 3.0 and 3.1 sites” 😉

Like

Has Woocommerce 3.2 removed the email address from order confirmation emails sent to admins? Or is there a new setting we need to change? We suddenly do not have email address included on order confirmation emails.

Like

Hi, for several days the checkout on my webshop is not available. I found out, that I have to disable either the WooCommerce plugin or the PayPal Plus plugin to get to the checkout page. Could there be an incompatibility between the two plugins ? The Plugin for plain PayPal doesn´t cause problems.

Like

Comments are closed.