Guide for Upgrading to WooCommerce 2.1 February 12 2014

WooCommerce 2.1 was released on Monday, and makes several changes to the core plugin. As a result, you may experience issues when upgrading if you don’t pay attention to a few of the changes. The guide that follows is a general overview of some things to look out for when upgrading to WooCommerce 2.1 to make the transition from WooCommerce 2.0 as smooth as possible.

There are a couple of known issues that are being updated already, so keep an eye out for Version 2.1.1 in the next couple of days if this guide doesn’t address an issue you’re experiencing. (Update: This has now been released.)

(You can check out this WooCommerce 2.1 review from Sell with WP for the full details on changes.)

Preparing to Upgrade

First, you should always back up your site before upgrading major plugins such as WooCommerce. A plugin like BackupBuddy can be useful, or if you use a managed hosting service like WP Engine (affiliate link), then you probably have nightly backups that you could restore already.

Another habit that we recommend forming is using a staging site to upgrade all plugins before deploying those updates to your live site. This is another reason we love WP Engine. You can use their staging site capabilities to clone your site to a staging environment, make any changes needed, then copy those changes back to your live site. BackupBuddy can do this as well by copying your domain to a sub-domain, such as staging.mysite.com. You could also achieve this with a plugin like WP Stagecoach.

Performing Upgrades

Once you have a backup and testing site ready, you should make sure you’re running WordPress 3.8, then you can upgrade WooCommerce and any extensions with updates (though most have already been made 2.1-compatible).

One of the first things you’ll notice is that settings have changed. For example, all Payment Gateway information and settings is now under “Checkout”. Under “General”, we recommend that you leave the REST API enabled. You may also want to set a number of decimal places (recommended: 2) for your pricing under General settings. Some of the other general settings have been moved to more appropriate menus. For example, the coupon and SSL settings have been moved to “Checkout”.

Tax handling has also been improved (still under the “Tax” menu), and taxes can be total or itemized in the checkout. Price display in the catalog can also be inclusive or exclusive of tax.

The pages installed by default have also changed, which greatly simplifies plugin setup. The only pages now installed are the “Shop”, “Cart”, “Checkout”, and “My Account” pages. You may want to double-check that you have these four pages with the appropriate shortcodes on them (remember, you won’t need all of the shortcodes from that link – the docs are not updated yet).

Sub-pages, such as “Lost Password” are now endpoints generated by the plugin, so pages with shortcodes for these items will no longer work the way that they have previously and you can delete them. Instead, these pages will always have the same URL. For example, the “Lost Password” page will now always be located at www.mystore.com/my-account/lost-password/ unless you change the endpoint under the “Accounts” menu (other endpoints are under “Checkout”) or the name / URL of the “My Account” page. This improves stability and prevents the accidental deletion of important pages.

You can also allow customers to register without a password under the new “Accounts” menu to facilitate registration and improve conversions. Passwords will be automatically generated and sent to customers.

As far as other settings are concerned, we’d recommend checking out your shipping and tax settings since there are a few new options, but not much else should be affected.

Note: If you were using the ShareThis, Google Analytics, ShareDaddy, Piwik, or ShareYourCart integrations, you’ll notice that these have been removed from the core plugin and the “Integrations” menu may be gone. These are now separate companion plugins that you can download for free (the WooThemes announcement has links to all of the new integration plugins).

Known Issues

Here’s a list of known issues, but we’ll give you a recap of some here.

First, changes to the way the frontend of your store may be related to your theme (i.e., the way product pages display), as some third-party themes have not been updated to be compatible. See this debugging guide to determine if a theme issue exists, and if so, contact your theme provider to ask them to update for WooCommerce 2.1.

If this doesn’t help, creating a support ticket with both your theme developer and WooThemes would probably be the best course of action to target the problem. However, taking a couple simple debugging steps on your part will greatly reduce the time needed to solve the issue, and may be something you can do on your own.

Known frontend changes include variations and product reviews. Product variations will now display “Low Price – High Price” rather than “From {Low Price}” in order to prevent misleading customers, as some variations can change price drastically. If you want to revert to the old format, follow this guide. Also, the box to write product reviews will no longer open in a lightbox.

Here are some specific issues and fixes:

  1. If variable products cannot be added to the cart, delete /woocommerce/single-product/add-to-cart/variable.php from your theme’s directory and ask your theme provider to update their WooCommerce templates.
  2. If language codes are being ignored, wait for the WooCommerce 2.1.1 release, as this is a bug. Update: You can now upgrade to WooCommerce 2.1.1 to fix this.
  3. You want to disable the WooCommerce stylesheet, but can’t find the setting. That’s because it’s not there. Use this documentation instead.
  4. If you have 404 errors all over the place, this can be fixed, and will be in WooCommerce 2.1.1. In the meantime, you can manually flush permalinks by re-saving the Settings > Permalinks page in your WordPress admin.
  5. You see an error like this:
    Fatal error: Call to undefined method
    WC_Shipping::get_available_shipping_methods() in .../wp-content/themes/THEME-NAME/woocommerce/checkout/review-order.php on line 14

    This is a theme issue and will need to contact the theme developer to have the deprecated template files updated.

  6. If your widgets are not displayed, it’s because some have been renamed to avoid conflicts. You may need to go to Appearance > Widgets to re-add these widgets to your footer and sidebars. Many widgets were also compressed into a new “Products” widget, which has all of the same capabilities.

In Summary

As we’ve had a large hand in this development cycle, we’re confident that the new changes make WooCommerce, faster, more stable, and more secure than ever before. If you’re lost, please post questions in the comments and we’ll do our best to help you out. Once you’ve upgraded, we hope that you’ll enjoy the improvements as much as we do!

The post Guide for Upgrading to WooCommerce 2.1 appeared first on SkyVerge.