Categories
Core

WooCommerce 3.3 has been released

Today we’re excited to release WooCommerce 3.3 into the wild! 3.3 has been in development since October, and has had over 1581 commits from 80 contributors.

bionic-butterfly

3.3 is a minor update. All changes should be backwards compatible with sites running any version of WooCommerce since 3.0, 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.

Orders screen redesign

WooCommerce 3.3 features a revamp of the Orders screen. It has been redesigned to be simpler and clearer while at the same time being more useful. This has been developed with backwards compatibility in mind, so extensions that add features to the Orders screen should continue working normally. You can read more about these changes here.

On Backorder stock status and stock management improvements

There’s a new stock status in town! Products can now have the “On Backorder” stock status. We’ve combined this with some improvements and automation to make the product stock management experience more intuitive. You can read more about these changes here.

Greater theme support and customization

We’ve improved the way WooCommerce stores look on themes that don’t declare WooCommerce support. This was done by rendering the store content inside of the theme’s post content area. This way the layout of the store will fit neatly with any sort of theme layout and the store will look great. This change only affects themes that don’t formally declare WooCommerce support. You should now be able to use WooCommerce with almost any theme from WordPress.org!

All themes get to take advantage of this next feature: You can now use the Customizer to set the number of rows and columns in the shop. Theme developers can set minimum, maximum, and default row/column settings when declaring theme support. Read more about these features here.

Image size improvements

You can choose and change the aspect ratio of the images in your shop using the Customizer. Themes can also set the image sizes when declaring WooCommerce support.

In addition, product thumbnails are now automatically regenerated. No need for a special plugin to regenerate images! This feature uses a new event queue that processes in the background. We will be able to use this sort of queue in the future for eliminating race-conditions caused by concurrent requests and for improved performance through background processing. Read more about these changes here.

Features for store owners

  • Product downloads are logged and can be analyzed and filtered. Read more about this here.
  • The `products` shortcode now has pagination and tag support.
  • Live preview of shop display settings in the Customizer.

Features for store builders and developers

  • Webhooks now use the CRUD design pattern we’re using in other classes. This is also the first area of the codebase to move to custom tables! Read more about this here.
  • New sample data for easily populating shops with demo content.
  • Added sandbox and live API details to the PayPal standard data, as well as an indication on the checkout to what mode is currently active. PayPal IPN email notifications are also now optional.
  • Ability to search in logs when the database logger is used.

Upgrading to 3.3

3.3 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.

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

Template file changes in 3.3

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.3:

  • auth/form-login.php – Converted submit inputs to buttons.
  • cart/cart.php – Decoupled cart templating methods from WC_Cart class and converted submit inputs to buttons.
  • cart/mini-cart.php – Decoupled cart templating methods from WC_Cart class and converted submit inputs to buttons.
  • cart/shipping-calculator.php – Included city field by default.
  • checkout/form-coupon.php – Converted submit inputs to buttons.
  • checkout/form-pay.php – Converted submit inputs to buttons.
  • checkout/payment.php – Converted submit inputs to buttons.
  • checkout/review-order.php – Decoupled cart templating methods from WC_Cart class.
  • emails/customer-invoice.php – Improved default test for checkout page link.
  • global/form-login.php – Converted submit inputs to buttons.
  • global/quantity-input.php – Added aria-labelledby to quantity field.
  • global/wrapper-end.php – Made the Underscores theme wrappers the default.
  • global/wrapper-start.php – Made the Underscores theme wrappers the default.
  • loop/add-to-cart.php – Added add_to_cart_description method and aria-labels to cart buttons.
  • loop/loop-start.php – Use new loop functions.
  • loop/orderby.php – Refactored to work well on unsupported themes.
  • loop/pagination.php – Refactored a little to work well on unsupported themes.
  • loop/result-count.php – Refactored a little to work well on unsupported themes.
  • myaccount/form-add-payment-method.php – Improved wording and converted submit inputs to buttons.
  • myaccount/form-edit-address.php – Converted submit inputs to buttons.
  • myaccount/form-login.php – Converted submit inputs to buttons.
  • myaccount/form-lost-password.php – Converted submit inputs to buttons.
  • myaccount/payment-methods.php – Removed a message about new payment methods.
  • notices/error.php – Added role=alert for improved accessibility.
  • notices/success.php – Added role=alert for improved accessibility.
  • order/form-tracking.php – Converted submit inputs to buttons.
  • order/order-details-customer.php – Cleaned up and updated as part of Orders UI revamp.
  • order/order-details.php – New actions and a little refactoring.
  • order/order-downloads.php – Made the downloads table responsive.
  • single-product/add-to-cart/grouped.php – New hooks and added form action.
  • archive-product.php – Use new loop functions.
  • content-widget-product.php – Better action names.
  • product-searchform.php – Converted submit inputs to buttons.

Deprecated functions and methods in 3.3

  • wc_get_core_supported_themes has been deprecated since core now supports all themes.
  • WC_Product_Download::set_previous_hash has been deprecated since core is no longer using filename-based hashing to keep track of files.
  • WC_Product_Download::get_previous_hash has been deprecated since core is no longer using filename-based hashing to keep track of files.
  • WC_Admin_Webhooks::logs_output has been deprecated since logging is no longer done on the Edit Webhook screen.
  • WC_Admin_Webhooks::get_logs_navigation has been deprecated since logging is no longer done on the Edit Webhook screen.
  • WC_Customer_Download_Data_Store::update_download_id has been deprecated because download_id is now a static UUID and should not be changed based on file hash.
  • WC_Cart::get_item_data has been deprecated in favor of wc_get_formatted_cart_item_data.
  • WC_Cart::get_remove_url has been deprecated in favor of wc_get_cart_remove_url.
  • WC_Cart::get_undo_url has been deprecated in favor of wc_get_cart_undo_url.
  • WC_Post_Data::process_product_file_download_paths has been deprecated because no action is necessary on changes to download paths since download_id is no longer based on file hash.
  • WC_Webhook::get_delivery_log has been deprecated since webhook logs are stored using the logger.

How we tested 3.3

3.3 beta was released on December 12th 2017 and remained in beta until the RC on January 11th 2018. 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.3!

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 claudiulodro claudiosanches kloon rodrigoprimo dechov
mikejolley claudiulodro claudiosanches kloon rodrigoprimo dechov
belcherj WPprodigy shivapoudel bor0 marcinbot stevegrunwell
belcherj WPprodigy shivapoudel bor0 marcinbot stevegrunwell
davefx AdamQuadmon ElectricFeet rnaby ughimire ragulka
davefx AdamQuadmon ElectricFeet rnaby ughimire ragulka
james-allan alexminza v18 JPry kraftbj unfulvio
james-allan alexminza v18 JPry kraftbj unfulvio
johndcoy vyskoczilova bsessions85 axelmm franticpsyx JeroenSormani
johndcoy vyskoczilova bsessions85 axelmm franticpsyx JeroenSormani
glagonikas MannyC seostudio MounirHamani kovshenin yratof
glagonikas MannyC seostudio MounirHamani kovshenin yratof
MillerMedia ryelle ramiy tiagohillebrandt mikalai-okun macbookandrew
MillerMedia ryelle ramiy tiagohillebrandt mikalai-okun macbookandrew
bekarice mensmaximus gedex tiagonoronha MechielCouvaras bobbingwide
bekarice mensmaximus gedex tiagonoronha MechielCouvaras bobbingwide
miniMAC lipemat tomedme ibndawood SiR-DanieL pathurs
miniMAC lipemat tomedme ibndawood SiR-DanieL pathurs
ryanr14 zachd dougaitken jimjasson ahmedofali garethallison
ryanr14 zachd dougaitken jimjasson ahmedofali garethallison
tyrann0us jamesckemp Chouby shoheitanaka willgorham n-dawson
tyrann0us jamesckemp Chouby shoheitanaka willgorham n-dawson
daigo75 kellychoffman parkinep soft79 jobthomas westi
daigo75 kellychoffman parkinep soft79 jobthomas westi
ChaseWiseman jameskoster pmgarman jdmadison iamchetanp jpkleemans
ChaseWiseman jameskoster pmgarman jdmadison iamchetanp jpkleemans
pmaiorana urosmil
pmaiorana urosmil

33 replies on “WooCommerce 3.3 has been released”

Mine too, scoaadmin! I don’t even know how to switch back to default. Was instructed to restore to a previous back up, but not sure that’s going to solve the issue. I also read this from wptavern.com : “Users can also wait for the release of 3.3.1, update to the pre-release version of 3.3.1, or use the WP-Rollback plugin and revert back to 3.2.6”

Like

@mikejolley … might be a little too early for a post-mortem on this, but I would like to suggest a couple things for afterwards when you have time to reflect about the RC process in the WooCommerce dev workflow.

I can only speak for my own company of course, but this time around we found the 2 weeks very tight as we have a lot of other stuff going on. We of course planned for a testing period of 3.3, but it was really tight.

3 weeks for testing the initial RC would give a little more breathing room I think, as most plugin and theme companies with limited staff budgets can’t afford to spend precious QA time testing on the WC betas only to have to re-test again on the RCs. We can only afford to test against the RCs. Otherwise we’d be spending half our time just testing WC releases which leaves precious little time for testing other features and patches of our own.

Secondly, when a second RC is released, it would be good if that also extended the deadline by an additional 1 week, so we have time to re-test if need be.

I hope this helps – best of luck getting through the next few days…

Like

I’d prefer a similar cadence, but smaller scope releases. There is a tendency to try to ship too much at once, where we could spread things out. Feature freeze at beta vs RC would also help.

Like

Definitely agree. We’re scoping down our minors as well to just a couple of features. The load on testing is what kills it and good manual testers are hard to come by (as you well know!).

Like

Breaking Jupiter v6 from 07 Dec 2017, a template with 82.000+ sales in ThemeForest. Hard to expect this from WooCommerce/Automattic but it happens. Any expectation for a fix or should I rollback?

Like

Just updated to this version – and to my big disappointment there where no breadcrumbs.

1. I have a custom theme

Tried:
a. Disabling my WC override theme (templates)
b. Disabling all code in functions.php that changed output on before_main_content, output_content_wrapper_end and woocommerce_breadcrumb.
c. Also all CSS files are reenabled

Is there a setting somewhere that I’m missing?

Like

How do you consider:
global/wrapper-end.php – Made the Underscores theme wrappers the default.
global/wrapper-start.php – Made the Underscores theme wrappers the default.
To be a minor update that should be backward compatible?

Ever theme using #content for styling is now broken.

Like

i do not know why, i do not do anything as iam not tech person . (iam just being patient, waiting) then after 3.3.1 released i had big issue with my shop page then i have just updated with 3.3.2, well, it is just like miracle, my shop page is okay now. and iam happy about this. i do not know why. even there is small matters about rich snippet like home/shop/…but its okay for me. Thanks for the miracle.

Like

Is there a chance we could see email templates customizer some days? It has not been changed for ages and looks very bad and hard to customize without programming skills..

Like

In 3.2.6, we had the ability to search multiple SKUs in admin using a comma separated list. This was very helpful to us in bulk editing a discrete list of items when our salespeople sold product at trade shows or direct sales. We noticed in 3.3, that functionality has been lost. Any chance it may be incorporated in a future release?

Like

After reading the Github discussion, I did some testing myself with string queries separated by commas versus spaces only and on our data both searches yielded the same results. As an example I searched the phrase:

PCGS MS-66 GORGEOUS, PREMIUM QUALITY

yielding

1925-S CALIFORNIA SILVER COMMEM HALF DOLLAR PCGS MS-66 GORGEOUS, PREMIUM QUALITY
1938-S JEFFERSON NICKEL PCGS MS-66 GORGEOUS & PREMIUM QUALITY!
1911 BARBER DIME PCGS MS-66 PREMIUM QUALITY! GORGEOUS COLOR!!

The same phrase less the comma after “GORGEOUS” yielded the same 3 results. The same phrase with each word separated by a comma also produced the same 3 results. So it would seem while the comma acts as a logical “OR” with numeric values (SKUs), it does not seem to influence the search logic with alpha strings.

As an aside, I showed our VP the WooCommerce POS plugin you had linked and he seems very excited about incorporating it at trade shows.We will probably revise our sales protocol since with the POS plugin, we can revise our online inventory much more accurately and quickly.

Liked by 1 person

Thank you for the quick response. I read the Github post and understand the direction you’re going with the admin search. Interesting that an incidental feature turned out to have such value from our perspective. We have moved from a proprietary website to WooCommerce where this feature was a staple and made our inventory management much easier. I also reviewed the plugin you recommended and thank you for that. Unfortunately, the idea of creating more work for our sales force is not well received. 😉

Like

Bonjour !

J’ai un gros problème avec WC 3.3.5. Thème woodance et constructeur de page Uniyson. Les produits s’affichent de manière anarchique en utilisant les catégories en précisant que les dernières produits en fin de catégorie s’affichent au centre ou à droite de la page. Il m’est impossible d’afficher une gamme de produits par page. Lorsque je sélectionne les ID des produits, les images affichées ne correspondent absolument pas aux produits choisis par les ID. Je suis trés ennuyée car voilà plusieurs jours que je tente de règler le problème mais en vain. Le site doit être rendu au plus vite. J’ai donc besoin d’une solution rapide et surtout efficace ! Merci pour vos réponses concrètes qui me permettent de sortir de ce mauvais pas. Ce message est vraiment urgent. Bien-sûr, j’ai contacté le support du thème, mais les réponses sont très évasives et ne permettent aucune résolution des problèmes rencontrés. Merci pour votre retour rapide. Cordialement.

Like

Comments are closed.