• WooCommerce 2.6 Beta 3 has been tagged and is now available from Github. Since beta 1 there have been a number of fixes, tweaks and commits (159) so be sure to give it a whirl.

    You can download beta 3 here

    Changes since beta 2

    We have worked on several bug fixes and hook renames since beta 2 which I won’t go into detail listing (see the list of changes here), but the larger items include:

     

    Beta testing

    If you’d like to help test, you should download the release from Github or you can use our beta testing plugin.

    Remember you can also help translate 2.6 on the development branch on translate.wordpress.org.

    Release schedule

    Pending feedback, RC1 will be tagged on the week of the 30th May with the final release coming a week later. We’re almost there!


  • WooCommerce 2.6 Beta 2 has been tagged and is now available from Github. Since beta 1 there have been a number of fixes, tweaks and commits (183) so be sure to give it a whirl.

    You can download beta 2 here

    Changes since beta 1

    For everything else, see the comparison here.

    Testing

    If you’d like to help test, you should download the release from Github.

    You can also use our beta testing plugin.

    Remember you can also help translate 2.6 on the development branch on translate.wordpress.org.


  • For the past few months, we’ve been quietly working on something we think will be a big part of the future of WooCommerce: WooCommerce Connect.

    Connect is a new architecture for integrating services with WooCommerce. We’re taking advantage of a SaaS-style Automattic-hosted server to do the heavy lifting and have created a new Calypso-style interface. On the users’s end, they’ll just see a streamlined experience:

    • No additional extensions to install
    • No API keys to remember
    • No subscription keys to copy and paste

    We’ve built the foundation and added our first service. This first iteration supports real-time USPS shipping rates for stores based in the United States. Now, we’d like to welcome you to the testing phase.

    Join us in building the future of WooCommerce

    Release Highlights

    This first Alpha release of WooCommerce Connect works with the WooCommerce 2.6 Beta and with Jetpack to bring hassle free USPS shipping to WooCommerce Shipping Zones.

    Since this is an alpha version, there’s a lot we plan to add, change and enhance. Please take care – this early pre-release code should not be used on production sites.

    At this time, WooCommerce Connect is delivered as a feature plugin, and the grand plan is to roll out Connect into a future WooCommerce core release.

    For developers, this is an great opportunity to:

    • see the future of WooCommerce development
    • see examples of incorporating React into WooCommerce administration
    • see how we’re using JSON schemas provided by the WooCommerce Connect servers to drive the layout and composition of the forms for shipping services – making adding features much less likely to require plugin updates
    • see examples of how to extend the WP REST API and Shipping Zones in WooCommerce 2.6

    Alpha Testing

    Alpha is out today. Subsequent alphas will be released if needed and we’ll post on this blog if this happens.

    If all goes to plan, Beta will begin during June 2016.

    If you’d like to help test, sign-up to be a tester – we’d love to hear from you!


  • WC 2.6 codename “Zipping Zebra” has been tagged and is ready for testing. This is our 2nd major release of 2016 and has around 900 commits in total. You can download beta 1 here.

    Release Highlights

    2.6.0 has a host of improvements and new features to dramatically improve shipping. Shipping Zones are now part of core. This means you’ll now be able to have instance based shipping methods, multiple flat rates, and much much more without the use of extensions. For developers, the shipping API docs are inside our wiki.

    The My Account shortcode/pages have been restructured to be tab based. This keeps things organised and allows devs to add more tabs if needed.

    You can read more about the tabbed my account page here.

    The cart page operations now use AJAX (updating item quantities, removing cart items, applying coupons, and updating shipping options) which you can read about and see in action here.

    We’ve worked on our layered nav system in 2.6 adding new functionality (now you can filter products by ratings) and improving performance for all layered nav queries.

    Developers will have access to our new Payment Tokens API which standardized the way in which tokens are stored and displayed. This wiki article explains usage for devs.

    We’ve also released a new version of the WooCommerce REST API, based on the WordPress REST API, which you can read about here.

    Other features developers and users will be interested in:

    • We’ve moved custom term meta implementation to WP Term Meta which was introduced in 4.4.
    • Added new wc_get_orders() function to get order objects and ids instead of direct get_posts() calls.
    • We’ve added the ability for shipping methods to store meta data to the order in the same way line items can.
    • We’ve made wc_create_new_customer() pluggable.
    • We’ve added > 100 new currencies based on https://en.wikipedia.org/wiki/List_of_circulating_currencies, and Bitcoin.

    Template changes in 2.6.0

    The following template files had their versions bumped in 2.6.0:

    • single-product/review.php – Added hooks to support the following new templates:
      • single-product/review-rating.php
      • single-product/review-meta.php
    • order/order-details.php – Fix to only get purchase note if product exists.
    • myaccount/my-account.php – New action hooks to support tabbed navigation and the following new template files:
      • myaccount/downloads.php
      • myaccount/view-order.php
      • myaccount/payment-methods.php
      • myaccount/orders.php
      • myaccount/navigation.php
    • myaccount/my-downloads.php – Deprecated.
    • myaccount/my-orders.php – Deprecated.
    • myaccount/form-add-payment-method.php – Added tabbed naviation.
    • myaccount/form-edit-address.php – Added tabbed naviation.
    • myaccount/form-edit-account.php – Added tabbed naviation.

    Release Schedule and beta testing

    Beta 1 is out today (April 22nd). Subsequent betas will be released as needed and we’ll post on this blog if this happens.

    If all goes to plan, Release Candidate 1 will be tagged during May 2016.

    If you’d like to help test, you should download the release from Github. We posted a nice little write-up on beta testing here which should get you started. Please read that and jump right in!

    If you’re like to help translate 2.6, you’ll find it on the development branch on translate.wordpress.org.

    Thanks to all of our testers and contributors.


  • During the development of WooCommerce 2.1 (Back in Feb 2014) we knew that one day WordPress would have it’s own REST API, but the demand was so great for such a thing in WooCommerce we had to roll our own.

    We’ve learned a lot from this process and our API is now widely used, but given recent developments surrounding the actual WordPress REST API, and since it is now part of WordPress core (since version 4.4) we started work to replace ours with what is available in WordPress.

    2.6 will contain this new API, and will require WordPress 4.4 or higher.

    (more…)


  • The WooCommerce 2.5.5 fix release is now available. A total of ~6 commits made it into this release fixing a notice in WP Admin during product creation which affected some users.

    As an aside, we’re currently working hard no a new API/CRUD classes in WooCommerce core to support Orders, Coupons, and products. Once complete this will make things such as saving products more testable via unit tests making issues like the above one much less likely to slip through the net!

    The changelog for 2.5.5 is below.

    * Fix - Prevent notice when unsetting terms on product edit screen.
    * Tweak - zeroclipboard fallback for firefox on system status report.
    * Tweak - Check valid product ID is provided on add_to_cart shortcode.

    You can download it on WordPress.org or as an automatic update in your administration panel.

    If you spot any further issues, please report them to us in detail on Github so the development team can review – comments on this post are closed.


  • The WooCommerce 2.5.4 fix release is now available. You can download it on WordPress.org or as an automatic update in your administration panel.

    A total of ~29 commits made it into this release fixing several minor issues and making some small tweaks.The biggest fix in 2.5.4 was utf8mb4 support for our database table schema (thanks JJJ). This was causing new users to have missing woocommerce_terms tables after install.

    The changelog for 2.5.4 is below.

    * Fix - Fix table creation when using utf8mb4 charset.
    * Fix - Have wp_insert_post return WP_Error when creating our coupon, so the is_wp_error check can catch it.
    * Fix - Clear sale price on save if sale is no longer valid.
    * Fix - Round refund values to ensure refunds can be performed.
    * Fix - When getting coupon by code used twice, latest should be queried.
    * Fix - CLI improvements for setting up variations and deleting orders.
    * Fix - Allow big selects when getting variations to support larger queries.
    * Fix - Trigger webhook when user edits addresses on frontend.
    * Fix - Hide shipping row when calculator is disabled, and shipping costs are hidden.
    * Fix - Unset deleted attributes when updating products.
    * Tweak - Update date for paid orders during non-manual updates only.
    * Tweak - wc_get_page_permalink - if the page ID is not set, redirect home instead to prevent white screens.
    * Tweak - Remove log dir from system status report.
    * Tweak - When sorting by date, fallback to ID.
    * Tweak - Rename pay link for clarity.
    * Tweak - Provide a fallback message if copying to the clipboard fails in system status report.

    If you spot any further issues, please report them to us in detail on Github so the development team can review – comments on this post are closed.


  • The WooCommerce 2.5.3 fix release is now available. You can download it on WordPress.org or as an automatic update in your administration panel.

    The most notable change is to customer details on the thanks page. The thanks page has an obscure URL making it impossible to guess/find and see other user’s orders, however, if someone did discover the URL they’d see the customer address along with order details. To maintain privacy this is now hidden if the user viewing the page is a guest, or does not own the order.

    A total of ~34 commits made it into this release fixing several minor issues and making some small tweaks. The changelog for 2.5.3 is below.

    * Fix - Correct the 'unavailable template' call for variations so the message is displayed correctly, fixing a JS error.
    * Fix - Add 'media-models' dependency to write panel scripts.
    * Fix - Fix hide empty check in category walkers.
    * Fix - Current class fix on some servers when empty.
    * Fix - Multibyte safe trim string function.
    * Fix - Prevent a notice by stopping a loop in woocommerce_products_will_display from stomping on other variables.
    * Fix - If an attribute meta key is not set, technically its 'any', so should match. Prevents issues when meta data is missing after renaming attributes.
    * Fix - Make wc_get_product_variation_attributes ignore non variation attributes.
    * Fix - Notice when no order notes exist.
    * Fix - Removed extra tab from plain email shipping address.
    * Fix - Round shipping after tax calculation instead of before to prevent wrong taxes being calculated.
    * Fix - State input box was not reappearing when switching from a hidden input to a text input.
    * Fix - Don't duplicate rating and review counts.
    * Fix - CLI - Allow setting of a single category.
    * Fix - API - Replace term_taxonomy_id for term_id whilst creating/editing terms.
    * Fix - API - Fix parent_id and menu_order for variations.
    * Fix - Combine update post calls when update_status is ran.
    * Fix - Total number of comments in the admin panel.
    * Tweak - Show customer details for logged in users only on thanks page to prevent customer details being revealed if someone finds out the URL.
    * Tweak - Wrap status report in backticks to stop people breaking .org forums.
    * Tweak - Error handling for screen ids.
    * Tweak - Use $wpdb->replace instead of doing a select and then deciding to do an update or insert in session handler.
    * Tweak - Added check for private WooCommerce pages in status report.
    * Tweak - Transactional emails for failed -> on hold.
    * Dev - Include new triggers when removing and adding the password strength meter.
    * Dev - Allow pass objects and arrays as webhook callbacks.

    If you spot any further issues, please report them to us in detail on Github so the development team can review – comments on this post are closed.


  • The WooCommerce 2.5.2 fix release is now available. You can download it on WordPress.org or as an automatic update in your administration panel.

    A total of ~46 commits made it into this release fixing several minor issues.

    * Fix - Compatibility with w3 total cache inline minification.
    * Fix - Remove stock bw compat code which was preventing manage stock being disabled at variation level.
    * Fix - When calculating shipping total, force rounding.
    * Fix - Make save button clickable in tax rate table after using autocomplete field.
    * Fix - Fix passed image_size variable in email templates.
    * Fix - Don't show purchase note to admin in emails.
    * Fix - Fix 'hide empty' setting in category widget
.
    * Fix - Prevent notice in get_allowed_countries.
    * Fix - Prevent add-to-cart querystring in pagination links.
    * Tweak - Allow propagation in variation script.
    * Tweak - Product image alt text.
    * Tweak - Remove notice and add styling for add payment page.
    * Tweak - Set input margin and label display for compatibility with themes using bootstrap CSS.
    * Tweak - Add context to category term localization.
    * Tweak - Moved cart URL functions to core-functions file to make them available in admin area.
    * Tweak - Added password hint text and error messages when showing the password strength meter in forms.
    * Tweak - Added Saudi Riyal currency.
    * Tweak - Added Russian Ruble symbol.
    * Tweak - When COOKIEPATH is an empty string, set to '/' so cookies work across all pages.
    * Dev - Template - Pass $category into wc_product_cat_class() in content-product_cat.php

    If you spot any further issues, please report them to us in detail on Github so the development team can review – comments on this post are closed.


  • The WooCommerce 2.5.1 fix release is now available. You can download it on WordPress.org or as an automatic update in your administration panel.

    A total of ~36 commits made it into this release fixing several minor issues.

    = 2.5.1 - 25/01/2016 =
    * Fix - Remove usage of get_currentuserinfo() which is deprecated in WordPress 4.5.
    * Fix - Fix responsive product sizes when the columns class is missing.
    * Fix - Fix function exists check for woocommerce_template_loop_category_title.
    * Fix - check_version on all requests so that the installer runs after remote plugin updates.
    * Fix - Only show the "add payment method" button when needed, and check for required fields on the add payment method page.
    * Fix - Correctly block UI to prevent attribute issues in backend when adding multiple attributes in quick succession.
    * Fix - Show SKU in admin emails.
    * Fix - Don't show downloads in admin emails.
    * Fix - Fix query/missing variable in validate_user_usage_limit function.
    * Fix - Prevent endless loading on checkout when reload_checkout session variable was used.
    * Fix - Correctly display html entities in tax screen autocomplete.
    * Fix - Do sales reports based on refund line items rather than fully refunded orders to prevent double refunds being reported.
    * Fix - Qty button can be hidden for variable products sold individually.
    * Fix - Show the taxable country rather than base country in "estimated for" text during checkout.
    * Fix - Prevent select2 gaining focus on IOS7 scroll.
    * Fix - API - Fix indexes on decimal and thousand values.
    * Tweak - Clear cron jobs on uninstall
.
    * Tweak - Don't disable place order button on checkout if a weak password is used.
    * Tweak - Added password strength meter in lost password and edit accout pages.
    * Tweak - Pass $args to woocommerce_dropdown_variation_attribute_options_html hook.
    

    If you spot any further issues, please report them to us in detail on Github so the development team can review – comments on this post are closed.