Changelog

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

    ~12 commits made it into this release fixing a few issues.

    The full changelog for 2.6.12 is below.

    * Fix - Make images shown up on pageload when using ajax variations.
    * Fix - Allow variations options to be deselected in IE11.
    * Fix - Disabled-button and pagination styling in 2017.
    * Fix - PHP 7.1 compatibility issues with non-numeric math operations.
    * Fix - Fix notices in abstract class when price is empty.

    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.6.10 fix release is now available. You can download it from WordPress.org or as an automatic update in your administration panel.

    ~30 commits made it into this release fixing several issues.

    The main change to be aware of surrounds the variation add to cart form script. A few versions back we spotted an incompatibility with the latest version of Firefox which would deselect an attribute on click. This was “fixed” in 2.6.9, however this inadvertently prevented the ‘default selected’ attributes from working correctly in other browsers.

    We narrowed this down to the way WooCommerce would filter out non-relevent attributes on select box focus. Some browsers did not like the DOM being changed during the focus event. To resolve this, the DOM needed to be kept up to date and left alone during focus.

    The PR which fixed this can be found here. You’ll notice it’s a fairly substantial refactor, and one we wouldn’t usually feel comfortable including in a fix release, but it was necessary to resolve the browser compatibility issues and makes the script more easily understandable. We’ve been testing this internally since merging.

    The full changelog for 2.6.10 is below.

    * Fix flat rate no class costs when no shipping classes exist.
    * Fix returned REST API coupon expiry date.
    * Fix reviews_allowed being set to false in Rest API.
    * Fix sales date series for some custom ranges.
    * Fix missing attributes when an option is chosen by default on variations. This was the result of a Firefox 50 compatibility fix. In order to support both Firefox, Chrome, IE, and Edge we've done some refactoring of the variation add to cart scripts.
    * Updated Geo IP API services.
    * Added support for WP VIP/VIP GO GEO IP headers.
    * Dev - API - Throw error messages when product image ID is not a valid WordPress attachment ID.

    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.

    Happy holidays from the team 🙂


  • WooCommerce 2.7 codename “Bionic Butterfly” has been tagged in GitHub and is ready for testing!

    This is a major release with large structural changes to help us work towards a more performant platform. There have been over 1900 commits from 16 contributors since July!

    You can download WC 2.7 Beta 1 here.

    ( @ \v/ m )
    \__+|+__/
    {_/ \_}

    (more…)


  • WooCommerce brings many improvements to the WP-CLI powered command-line interface we introduced back in WooCommerce 2.5.

    WP-CLI is a set of command-line tools for managing WordPress installations Our WC-CLI layer adds tools for managing products, coupons, payment gateways, shipping zones, and much more.

    In WooCommerce 2.5 and 2.6, the CLI was powered by it’s own separate code. This code was separate from the REST API or WC core, meaning code could end being duplicated across the code base, or it meant that certain things possible in the REST API were not possible at all with the CLI.

    2.7 introduces a new CLI powered by the REST API. We did this by forking Restful. This reduced the amount of code be need to maintain, provides a lot more power and commands, and means that the commands will always be current as we improve our REST API in the future.

    Currently, following commands are available with list, get, update, and create operations:

    wp wc customer 
    wp wc customer_download 
    wp wc order_note 
    wp wc payment_gateway 
    wp wc product 
    wp wc product_attribute 
    wp wc product_attribute_term 
    wp wc product_cat 
    wp wc product_review 
    wp wc product_shipping_class 
    wp wc product_tag 
    wp wc product_variation 
    wp wc shipping_method 
    wp wc shipping_zone 
    wp wc shipping_zone_location 
    wp wc shipping_zone_method 
    wp wc shop_coupon 
    wp wc shop_order 
    wp wc shop_order_refund 
    wp wc tax 
    wp wc tax_class 
    wp wc tool 
    wp wc webhook 
    wp wc webhook_delivery 
    

    There is a wiki page containing more information and examples. We’ll also work on generating documentation similar to our REST API documentation for each command. You can also use the —help flag to find out each commands parameters.

    Please test out the new CLI commands and provide feedback or bug reports on GitHub!


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

    ~44 commits made it into this release fixing several minor issues and taking care of some security hardening.

    The main change was that we updated WooCommerce for compatibility with WordPress 4.7 and the new Twenty Seventeen theme!

    The full changelog for 2.6.9 is below.

    * Theme - Added support for Twenty Seventeen Theme.
    * Fix - Excluded webhook delivery logs from comments count.
    * Fix - Included password strength meter in "Lost Password" page.
    * Fix - Order fee currency in admin screen.
    * Fix - Variation selection on Firefox 40.
    * Fix - Don't prevent submission when table is not found on cart.
    * Fix - Improved layered nav counts on attribute archives.
    * Fix - Fixed pagination when removing layered nav items via widget.
    * Fix - Default BE tax rate.
    * Fix - Downloads should store variation ID rather than product if set. Also fixes link on account page.
    * Fix - Use wp_list_sort instead of _usort_terms_by_ID to be compatible with 4.7.
    * Fix - Only return empty string if empty for weight and dimension functions.
    * Security - Wrapped admin tax rate table values in _escape to thwart evil CSVs an admin user could upload. Vulnerability was discovered by Fortinet’s FortiGuard Labs.
    * Dev - API - Only update categories menu order and display if defined.
    * Dev - Fixed when should deliver wp_trash_post webhooks.

    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.


  • We’ve made a small update today (WooCommerce 2.6.8) to fix a few issues. You can download it on WordPress.org or as an automatic update in your administration panel.

    This release had ~14 commits.

    1. Fixed an issue where REQUEST_URI was missing a trailing slash during comparison in our page caching functions.
    2. Fixed an issue where empty prices were sent to PayPal.
    3. Fixed email validation on the account page.

    We also took the opportunity to update our extensions screen so it’s a bit more modern.

    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.


  • We’ve made a small update today (WooCommerce 2.6.7) to fix a few issues. You can download it on WordPress.org or as an automatic update in your administration panel.

    This release had ~11 commits.

    1. Fixed an issue where users without permissions to view reports, but could manage other parts of WooCommerce such as orders, could see the reports widget on the dashboard.
    2. Use FLOOR and CEIL to get price filter values. Fixes the issue where max price is capped at 99 in the price filter.
    3. Improved credit card fields for better mobile experience using TEL fields.
    4. Remove notices only once on cart so subsequent notices do not remove older notices.

    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.


  • We’ve made a small update and released WooCommerce 2.6.6 today to fix a potential conflict with extensions. You can download it on WordPress.org or as an automatic update in your administration panel.

    Only ~2 made it into this release to fix:

    1. A conflict with Local Pickup Plus due to 2.7.x code making it into the 2.6.x branch. This went unnoticed due to core not using the function with the error.
    2. The sort order of shipping methods was not being respected on the cart.

    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.6.5 fix release is now available. You can download it on WordPress.org or as an automatic update in your administration panel.

    ~82 commits made it into this release fixing several minor issues. The main changes are as follows.

    1. The ship to specific countries setting actually did nothing since 2.6.0. This has now been hooked up and made functional.
    2. We fixed the webhook delivery for manual orders by fixing the way dates are handled.
    3. Fixed some oddities around variation saving and the attributes being empty on the frontend when using ‘all’ attributes.
    4. Made the processing email send when the order goes from on-hold to processing. This can sometimes happen with PayPal orders which are delayed.
    5. Improved and fixed some validation functions on the my account screen.

    The full changelog for 2.6.5 is below.

    * Fix - Shipping classes URL in admin.
    * Fix - Notice in reports when using custom date ranges.
    * Fix - When checking needs_shipping, ignore anything after : in the method ID.
    * Fix - Allow has_shipping_method to work with instances.
    * Fix - Potential notice in wc_add_to_cart_message().
    * Fix - Prevent notice in wpdb_table_fix if termmeta table is not used.
    * Fix - Payment method box fixes e.g. maintain previously selected payment method after update.
    * Fix - Prevent multiple password validation methods at once on my account page.
    * Fix - Ship to specific counties option had no effect.
    * Fix - Broken Webhook delivery due to use of post_date_gmt which does not exist for drafts.
    * Fix - Use method title in admin shipping dropdown.
    * Fix - Fixed downloadable variable product URL.
    * Fix - Handle object when generate_cart_id is used to prevent notices.
    * Fix - Set header link color in emails.
    * Fix - Rest of the world ID 0 zone handling when using CRUD classes.
    * Fix - Cast prices as decimal when querying prices in price filter widget.
    * Fix - API - Fix coupon description field.
    * Fix - API - ID needs to be capitalized to allow correct sorting.
    * Fix - API - Fixed undefined order ID.
    * Fix - API - Allow API to save refund reason.
    * Fix - API - Resolved encoding issues with attribute and variation slugs.
    * Fix - API - get_attributes should return term name, not slug.
    * Fix - API - Product "filter" and "sku" paramaters.
    * Fix - Handle info notices in cart, not just error messages.
    * Fix - Don't remove hyphens in attribute labels.
    * Fix - Start sales on variations after they are saved, if applicable.
    * Fix - Made the text showing max variations you can link match the actual filtered value.
    * Fix - Add missing tables to wpmu_drop_tables function.
    * Fix - When syncing variation stock, ensure post is a variation.
    * Fix - Resolved some sales by date sum issues.
    * Fix - Fix cart update in IE when enter key is pressed.
    * Fix - Variation is_on_backorder when parent manages stock.
    * Fix - Fix variation script malfunctioning when show_option_none arg is set to false.
    * Fix - Fire tokenisation event on load for pay page.
    * Fix - Populate attribute dropdown when empty.
    * Fix - Fix email check on my account page.
    * Fix - Send processing email on on-hold to processing transition.
    * Fix - Incompatibility with SQLite databases.
    * Fix - KGS and ISK currency symbols.
    * Tweak - Password reset now uses WP functions.
    * Tweak - Format US 9-digit postcodes.

    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.6.4 fix/security release is now available. You can download it on WordPress.org or as an automatic update in your administration panel.

    ~20 commits made it into this release fixing several minor issues. The main changes are as follows.

    • The REST API image upload feature has been locked down to only allow images, vs all supported WordPress MIME types.

    • There was an issue in COD where shipping method titles were missing.
    • WC_ROUNDING_PRECISION constant was removed but put back for plugin compatibility reasons.

    The full changelog for 2.6.4 is below.

    * Fix - Security - Only allow image MIME type upload via REST APIs.
    * Fix - Shipping method title display in COD settings.
    * Fix - Order date input in Edge browser.
    * Fix - Ensure value is not null in variations to support empty show_option_none setting.
    * Fix - get_the_title does not need escape in grouped template file.
    * Fix - Ensure WC_ROUNDING_PRECISION is defined and use it as a low precision boundary in wc_get_rounding_precision().
    * Fix - Response body should be a string in webhook class.
    * Fix - Use h2 instead of h3 headings in profile screen.
    * Dev - API - Allow Allow meta_key/value filters for products.
    * Dev - CLI - Explode tags and category IDs to allow multiple comma separated values.
    * Dev - add $order arg to woocommerce_admin_order_item_class and woocommerce_admin_html_order_item_class filters..

    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.