WooCommerce – as an e-commerce platform – is ever evolving.
The team keeps on adding new features, fixing bugs, and improving the plugin to meet our expectations.
Some of these updates might go unnoticed. I know I’ve been guilty of skipping a few minor updates, because of frequent releases. :-p
But this time around, WooCommerce has come up with a major update- “Bionic Butterfly“.
So what classifies this update as a “major” one? How are you – the store owner – affected? And how do you go about making a smooth transition to WooCommerce 3.0? Let’s find out.
WooCommerce 3.0 – Bionic Butterfly
What started out as WooCommerce version 2.7, scheduled to be released in February, was pushed back after the discovery of a major bug in the process of handling timestamps.
The outcome? Bug fixed; issue resolved; and WooCommerce 3.0 released on April 4th, 2017.
This version packs some major changes in the way WooCommerce handles data storage. And while this might not affect how you interact with the plugin, WooCommerce extension plugins you use will surely need to be compatible with v3.0 before you upgrade.
WooCommerce 3.0 Update: Changes to Product Gallery
Now, this is a welcome change that you should see right away when you upgrade to 3.0.0.
If you have more than one image for a single WooCommerce product, you should see great improvements when interacting with this product image gallery, especially on a mobile device.
This is great news for you, because shoppers now don’t have to struggle when viewing images. The gallery is more intuitive and shopper-friendly, allowing for the following:
- Shoppers can now hover over the images to magnify them, or can zoom into them from a lightbox
- Clicking on a thumbnail in the image gallery makes it the primary image instead of opening a popup
- Mobile shoppers can zoom, pan and scroll through images using pinch or swipe gestures
- Zooming a product image on mobile displays its original size, rather than fitting to the browser window (which was the case before)
As you know, images are quite critical for buyers when making a purchase decision; and this change will surely improve their experience.
WooCommerce 3.0 Update: Performance Improvements
This improvement is mainly for large stores that deal with hundreds of products and variations. Not that it isn’t important if you have fewer products, just that larger stores should be able to experience the difference.
These are under the hood improvements and have been made at the code level; however here’s what you need to know:
- Updating and display of products based on product visibility, featured product and ‘Out of Stock’ product options has been made smoother (due to the introduction of product_visibility taxonomy)
In testing, with ~8k products we saw speed improvements of around 94%.” – WooCommerce
- Data stored for Variable products has been optimized; unused data fields have been removed
- Management and display of upsells and related products has been improved
This step towards performance improvement is a positive sign for those of you looking to scale your store. WooCommerce does assure of more such updates in the future.
WooCommerce 3.0 Update: CRUD Classes
This is THE change that makes WooCommerce 3.0 a MAJOR update.
It’s the introduction of CRUD (Create, Read, Update, Delete) classes. With these classes, WooCommerce has standardized the way data can be stored and accessed by developers (or in your case extension plugins).
- WooCommerce defines structured data for each resource for easy lookup
- Data flow and validation is controlled by WooCommerce
- Developers are abstracted from knowing the internals of the data they are working with
- Data can be easily moved to say custom tables without affecting existing code
- These changes are reusable making the code optimized
This change will make for optimized data storage, and for uniformity in reading and writing data.
What you need to know is, due to this update in the way data is handled, WooCommerce extensions will have to adapt this new format to be WooCommerce 3.0 compatible.
Also, if you update to the latest version, you might notice a few deprecated function notices. This isn’t a reason for you to be alarmed, but these functions would have to be fixed or upgraded for things to function well in the long run, before WooCommerce completely removes them from their code.
WooCommerce 3.0 Update: CLI Powered REST API
WooCommerce has completely overhauled its Command Line Interface (CLI). The new interface has been forked from Restful and is powered by the REST API.
Effectively code duplication has been removed with more power to developers.
WooCommerce 3.0 Update: Template Changes & More
Version 3.0.0 has some template changes too. The following templates have been updated:
cart/cart.php cart/cross-sells.php checkout/thankyou.php emails/email-order-items.php emails/plain/email-order-items.php myaccount/downloads.php order/order-details-customer.php order/order-details-item.php order/order-details.php single-product/add-to-cart/grouped.php single-product/add-to-cart/simple.php single-product/add-to-cart/variation-add-to-cart-button.php single-product/meta.php single-product/photoswipe.php single-product/price.php single-product/product-attributes.php single-product/product-image.php single-product/product-thumbnails.php single-product/related.php single-product/review-meta.php single-product/review-rating.php single-product/stock.php single-product/tabs/additional-information.php
If your theme overrides any of these templates, you might want to update them.
Apart from these changes, there are lot more minor changes in this update. These being:
- Sorting of tax rates for easy management
- An option to dismiss sitewide notice
- On WordPress multisite, existing users will be added to a store if the user has an account on the same network
- Cart percent and product percent coupon types management has been merged
Ready to Update? Here’s What You Need to Do
If you’ve liked what you’ve read so far, I’m sure you will be eager to update. But *hold on*!
Since there are major changes involved, the update might result in some broken functionality – not because WooCommerce itself might be buggy (3.0.1 has fixed most bugs), but because WooCommerce extensions on your site might not be 3.0 ready.
So here’s what you would need to do:
- Check if all your extensions are WooCommerce 3.0 compatible: You can do this by checking a plugin’s changelog, the release notes, or by contacting the plugin owners. And what if your extension plugins are not compatible? It’s best to not upgrade to WooCommerce 3.0 till then or to test out the changes on a staging site to see if all’s well
- Backup all your data: Now, this should be the norm and not just a task you undertake when updating your WordPress website. Backups help you in adverse situations if upgrades go awry
- Test updates on a staging site: The most stress-free way of updating WordPress core, plugins or themes is to first test the updates on a staging site. A staging site is a replica of your live site. If all goes well on the staging site, you could make similar changes on your live site
- Upgrade extensions before updating WooCommerce: The order to follow when updating plugins, is to first update extensions then to update WooCommerce. This prevents any unexpected errors
While all of this can assure you of a smooth transition to the latest version of WooCommerce, it’s best to tread on the side of caution.
For example, you may have custom code that would need to be adapted to the latest changes. Or some changes would have to be made in your custom theme. In such cases, it is best to approach a WooExpert to get your needs resolved.
Maintenance plans can help too! WooCommerce specialists offer maintenance plans for a reason. It’s because you’re guaranteed of seamless updates along with regular backups and data security in all-in-one plans.
The choice is yours!
For more details, you can of course checkout WooCommerce’s official post on the release.
That’s all for now? We’d like to hear your thoughts or any upgrade related challenges you faced in the comments below! Happy selling!