*** WooCommerce Google Product Feed Changelog *** 2018.09.24 - version 7.6.3 * New: Add support for WooCommerce Cost of Goods extension 2018.09.10 - version 7.6.2 * New: Add support for "cost of goods sold" element * New: Allow variation inclusion to be filtered on a per-product basis (woocommerce_gpf_include_variations) * Fix: Do not calculate prices when instantiating a WooCommerceGpfFeedItem for structured data purposes. Improves performance of structured data generation * Fix: Correctly report meta-based prepopulations in system status report * Fix: Use wc() instead of global $woocommerce variable * Fix: Send shipping weight as an integer. Send as grams to increase accurancy 2018.07.02 - version 7.6.1 * New: Add "product title" as a prepopulation choice * New: Add "variant title" as a prepopulation choice * Fix: Be more efficient about internal data storage * Fix: Issue where imports via the WooCommerce importer could cause products to be marked as hidden from the feed incorrectly * Fix: Improvements in internal data storage for variable products 2018.04.17 - version 7.6.0 * New: Experimental support for Product Review feeds : https://developers.google.com/product-review-feeds/ * Fix: Make sure wc_get_products args are filtered consistently every time they're used. 2018.03.16 - version 7.5.0 * New: Variation products now pick up additional images from product gallery. 2018.02.26 - version 7.4.4 * Fix: List of custom fields available for pre-population is now filterable via woocommerce_gpf_custom_field_list * Fix: Custom fields that were only used on variations weren't available for selection * New: Introduce filter to exclude attribute labels from variation titles (woocommerce_gpf_include_attribute_labels_in_title) * New: Add support for energy_efficiency_class, min_energy_efficiency_class, and max_energy_efficiency_class in Google feed 2018.01.30 - version 7.4.3 * New: Allow items with no image to be excluded from the Google feed via filter (woocommerce_gpf_hide_if_no_images_google) * Fix: Do not output multiple values in Bing feed if set otherwise Bing cannot parse * New: Tested with WooCommerce 3.3 2017.12.18 - version 7.4.2 * Fix: Addresses a security issue affecting v7.2.0 through to 7.4.1 2017.11.20 - version 7.4.1 * Fix: Make sure wc_get_products() args filtered when rebuilding cache * Fix: Allow unknown product types to be treated as "simple" products" when processing * Fix: Ensure WC_Product consistently passed to filters * Fix: Resolve syntax issues when running on PHP < 5.4 2017.11.07 - version 7.4.0 * Fix: Layout issues with product feed information box for variations with some other extensions active. * Fix: Resolve issue which caused a warning to be raised on PHP versions prior to 5.5 * Fix: Resolve issue where WC_Product was not passed to woocommerce_gpf_feed_item filters when background rebuilding the cache * Fix: Do not generate warning in importer if CSV doesn't include "hide product from feed" column * New: Allow data to be pre-populated from custom fields through the UI * New: Allow feed types to be turned on/off * New: Block access to feeds that aren't enabled * New: Do not pre-generate cache for feeds that aren't enabled * New: Introduce woocommerce_gpf_render_item_output_{feed_type} filter for filtering rendered output data 2017.10.10 - version 7.3.0 * New: Ship .POT file for easier translations * New: Template tags now support individual variations * New: Add performance stats to XML footer if WP_DEBUG enabled * Fix: Avoid unnecessary output-buffering conflicting with WP Rocket's "remove query strings" functionality * Fix: Speed & memory optimisations for stores with heavily-variable products **NOTE** If you have custom code using the WoocommerceGpfFeedItem class, it's definition changes in this release, and your code will need updating. 2017.09.28 - version 7.2.1 * New: Introduce template tags for outputting product feed elements on product pages * New: Support for Bing shipping tags (required in Germany only) 2017.09.18 - version 7.2 * New: Support for WooCommerce REST API v2 * New: Add plugin version number to generator tag in Google feed for debugging * New: Add details of the plugin configuration to the WooCommerce system report * New: Add documentation links to plugin settings page * New: Improvement in pricing details for bundle products (requires Product Bundles > 5.4.3) * Fix: Avoid PHP warning if pre-population settings aren't initialised * Fix: initialise pre-population settings array on fresh installs * Fix: Resolve issue where some elements could be lost if corrupt product metadata present * Fix: Fix issue where the price in the feed for composite products wasn't always the minimum price of that product (requires Composite Products > 3.11.3) * Change: Improved unit tests for key classes 2017.08.30 - version 7.1.10 * Fix: Pass missing second argument to woocommerce_gpf_feed_item{*} filters when processing a variation product * Fix: Product Bundle prices could be incorrect under some tax setups * Fix: Issue where variations could send all possible attributes, not just those set on that variation * Change: Product bundles on sale will only show current price in feed, not regular & sale * New: Support import/export of "hide product from feed" settings * New: Add "tested up to" headers for future WooCommerce compatibility 2017.08.22 - version 7.1.9 * Fix: Minor fix to list of Bing categories * New: Add filter to allow short description to be used instead of full 2017.08.16 - version 7.1.8 * New: Add support for min_handling_time and max_handling_time * Fix: Inherit values set against parent product correctly when preopulation rules set. 2017.07.25 - version 7.1.7 * New: Add support for unit_pricing_measure and unit_pricing_base_measure * New: Add Woo header for compatability with new updater * New: Support for "installment" elements * New: Support for adding 2-level tags via the plugin filters * Fix: Take the active price as a sale price if it is lower than the regular price. Fixes issues with dynamic pricing extension. * Fix: Avoid PHP warning on variable products when display of variations is turned off * Fix: Shipping dimensions are rounded up to the nearest whole number to meet Google's specifications * Change: Shipping dimensions are sent as cm, not inches 2017.07.18 - version 7.1.6 * Fix: Ensure background cache processing happens when ALTERNATE_WP_CRON is defined * Fix: Disarm some third party plugins that run during feed generation and cause performance issues * Fix: Performance optimisation, clear down queues when doing a full cache rebuild * Fix: Workaround WooCommerce bug where old prices could be shown for simple products that have been converted to variable products * New: Support for including item_group_id automatically 2017.06.27 - version 7.1.5 * New: Support for product import / export in WooCommerce 3.1+ * Fix: When feed item caching is enabled healthchecks do not always run * Fix: When feed item caching is enabled, be more consistent about the order in which products are rebuilt * Fix: When feed item caching is enabled, clear the 'rebuild all' queue before adding a rebuild all job 2017.06.15 - version 7.1.4 * Change: Allow private properties on the WooCommerceGpfFeedItem object to be accessed read-only. * Change: Pass WC_Product to woocommerce_gpf_feed_item filter * Fix: GTIN in Bing feed was always blank * Fix: Structured data contains incorrect SKU value * Fix: Upgrade feed item cache bucket size to fix 'Opening and ending tag mismatch' errors with large variation output 2017.06.05 - version 7.1.3 * Allow Bing Category to be pre-populated from product fields * Add support for "adult" attribute in Google feeds * Improve efficiency of background cache generation * Avoid race-condition where not all changes were picked up on cache rebuilds * Correctly honour variation setting when rebuilding cache 2017.05.17 - version 7.1.2 * Fix issue where saving a variation caused on error on WooCommerce 2.6.x 2017.05.09 - version 7.1.1 * Fix issue where some files missing from packaged release * Add basic support for bundle products 2017.05.03 - version 7.1.0 * Fix issue where Composite products weren't included * Fix issue where External products were incorrectly included * Fix issue where definition of constant could conflict with other plugins * Introduce render cache for feeds, disabled by default pending testing, see https://docs.woocommerce.com/document/google-product-feed-feed-item-caching/ for information on how to test this 2017.04.25 - version 7.0.8 * Fix issue where variation ID not passed to woocommerce_gpf_elements filters * Fix issue where incorrect product ID passed to woocommerce_gpf_elements filters * Fix issue where is_bundle checkbox could not be unticked on a product edit screen * Fix issue where sale price effective dates weren't output correctly on WooCommerce 3.x * Fix warning shown generated when products have sale prices on WooCommerce 3.x * Update identifier_exists logic. Identifiers are now required for all countries 2017.03.30 - version 7.0.7 * Fix issue with "identifier exists" option not showing selected value correctly on settings form * Change mime-type of bing feed to fix issues when running behind CloudFlare * Fix issues where variation options were missing from variation titles in the feed 2017.03.06 - version 7.0.6 * Fix issue where descriptions weren't always passed through the_content filter * Fix issue where URL-based category filtering didn't work with permalink-style feed URLs * Remove some unused code 2017.03.06 - version 7.0.5 * Further compatibility changes in preparation for WooCommerce 2.7 2017.02.27 - version 7.0.4 * Fix error triggered on PHP releases < 5.4. 2017.02.20 - version 7.0.3 * Fix issue where incorrect variation price was picked when not including all variations in the feed * Update Bing feed to apply tax in relevant countries * Remove shipping dimension attributes from Google Inventory feed 2017.02.06 - version 7.0.2 * Fix issue where PHP warning could be generated. 2017.01.20 - version 7.0.1 * Fix issue where partial (chunked) feed settings were not always applied. 2017.01.17 - version 7.0.0 * Internal rewrites, including some performance improvements * Allow the shipping dimension unit types to be overridden * Allow feed to be generated for a specific category / set of categories via URL string Avoid warnings if taxonomies are removed after being set to be used for preopulation * WooCommerce 2.7 related updates. Take advantage of new APIs for fetching products if available. * Adds on-page structured data when running on WooCommerce 2.7+ (sku, itemCondition, gtin and mpn) 2016.10.31 - version 6.8.1 * Change plugin URL to WooCommerce domain * Ensure plugin links always go to WooCommerce, not WordPress.org 2016.10.11 - version 6.8.0 * More accurate image support. Fixes issues where non-attached product gallery images weren't included. 2016.08.31 - version 6.7.8 * Various performance improvements to feed generation * Introduce woocommerce_gpf_is_generating_feed() so other plugins / filters can tell if this request is for a feed 2016.08.02 - version 6.7.7 * Replace tabs with spaces when generating the Bing feed * Allow the g:link element to be filtered 2016.07.21 - version 6.7.6 * Fix issues where not all elements included in Bing feed * Robustness fix for deciding whether to send prices inc, or ex. taxes * Use WooCommerce standard functions for generating variation titles / URLs 2016.06.20 - version 6.7.5 * Send custom_label fields in the Bing feed * Fix warnings thrown for category settings on WooCommerce 2.6 2016.06.06 - version 6.7.4 * Make sure non-printable UTF characters are removed in product titles as well as descriptions. * Avoid issue where product titles occasionally get generated with a "()"" suffix. * Clean up product URLs for attributes with no values set (E.g. "all colours"). * Allow multiple GTINs to be entered against products. 2016.05.16 - version 6.7.3 * Do not hardcode guid in Google Inventory feed. Make it filterable in the same way as in the main product feed * Update unique identifier checks to match Google specifications * Make sure variation descriptions are more reliable where content includes product shortcodes * Consistent use of image size across main image, and additional images * Make image style filterable. Default to "full" * Send empty sale price effective date in inventory feed if none is set * Fix translat-ability of "include variations" option in the admin area 2016.04.30 - version 6.7.2 * Do not send any shipping dimensions unless all are available * Fix issues with some elements not coming through into feeds 2016.04.29 - version 6.7.1 * Avoid warning generated when saving a product after editing variations. 2016.04.26 - version 6.7 * Allow entry of feed values against individual variations * Variations support is no-long "experimental" * Fix issue where prepopulation sometimes used the parent value, not the variation value * Use guid from feed_item, not raw ID when creating product ID for Bing feed * Product type taxonomy autocompletion now pulls relevant language version based on store base country, not always American (en-US). 2016.04.20 - version 6.6 * Improvements to Bing feed elements, remove unused items, and rename to match latest specification * Better availability reporting for out of stock products when a default availability value is set * Support for "material" in feed. 2016.04.05 - version 6.5 * Support for pattern attribute * Fixes to variation support 2016.03.29 - version 6.4 * Allow delivery label field to be prepopulated from other product fields. 2016.03.18 - version 6.3 * Repackage to fix version inconsistency 2016.03.17 - version 6.2 * Extend the list of countries whose feeds should be supplied exclusive of taxes. 2016.02.24 - version 6.1 * Add support for is_bundle 2015.01.25 - version 6.0 * Experimental variation support * Fix undefined constant warning 2016.01.07 - version 5.2.2 * Use base country pricing / tax for feed ignoring geolocation. Requires WC 2.5 * Support image links with query parameters 2015.12.02 - version 5.2.1 * Add sale price effective dates to the Google Inventory feed. 2015.12.01 - version 5.2 * Support for sale price effective dates. * Fix issues with multibyte strings getting truncated mid-character * Allow size to be prepopulated from attributes (15 seconds ago) * Change to the base URL indicated in the feed. 2015.09.20 - version 5.1 * Fix markup error in admin area * Increase feed generation performance 2015.06.03 - version 5.0 * Provides support for Product Inventory feeds for Google Merchant Centre. * Provides support for populating feed information product attributes without having to use code snippets. * Item GUIDs are now filterable via woocommerce_gpf_feed_item_ filters. * Fix Bing link in admin area to satisfy URL suffix validation. * Admin markup and accessibility fixes. 2015.04.30 - version 4.0.3 * Fix issue with size system not showing the currently selected value properly 2015.04.23 - version 4.0.2 * Fix issue with alt text on feed type icons on settings page 2015.04.20 - version 4.0.1 * Security release 2015.02.03 - version 4.0 * Support for sale_price element * Avoid errors when products have child posts that aren't WooCommerce products * Support for shipping_length, shipping_width and shipping_height * woocommerce_gpf_exclude_product filter can be used to include products that would normally be excluded. 2015.01.14 - version 3.9 * Support for delivery_label attribute. 2014.12.29 - version 3.8 * Revert previous variation pricing change since it causes feed disapproval in some cases. 2014.12.21 - version 3.7 * Always use the maximum price for variable products in line with Google's guidelines. 2014.12.16 - version 3.6 * Add support for Promotion ID in the feed * Improvements to product identifier supports to make identifier_exists work more reliably 2014.11.17 - version 3.5 * Fix compatiblity with WC 2.0.x and variable products 2014.11.10 - version 3.4 * Calculate tax status for variable products on tax exclusive setups. 2014.10.21 - version 3.3 * Do not use invisible child products when calculating the price 2014.09.22 - version 3.2 * Support for Google feed specification changes * Support max lengths in the Google feed * Support for availability_date * Merge "available for order" availability with "in stock" in the Google feed * Support for size_system * Add support for size_type * Extra options for age_group 2014.09.03 - version 3.1 * Don't show duplicated settings updated messages in the admin area 2014.08.25 - version 3.0 * Make fields filterable * WooCommerce 2.2 compatibility 2014.07.28 - version 2.9.1 * Fixes for custom_label elements 2014.07.18 - version 2.9 * Support for custom_label attributes * Trim out non-printable UTF-8 characters 2014.06.13 - version 2.8 * Fix issue where disabled fields could still be included in the feed * Avoid PHP warning when saving categories. Fixes #1 * More robustly transliterate in Bing feed generation 2014.05.12 - version 2.7 * Correctly calculate taxable status for some configs * Performance improvements fetching Google product taxonomy on admin pages 2014.05.01 - version 2.6 * Fixes for complex characters in the Bing feed * Correctly calculate taxes inclusive of tax under some configs 2014.03.16 - version 2.5.5 * Avoid warning if data contains elements not defined in the current release * Avoid warning if invalid feed format is requested * Block WordPress Gzip Compression for feed requests * Fix out of stock products in Bing feed 2014.01.17 - version 2.5.4 * Fix out of stock products in Bing feed 2014.01.12 - version 2.5.3 * Squash a few warnings 2014.01.02 - version 2.5.2 * Additional filters for feed items, and store info 2013.11.27 - version 2.5.1 * Documentation fix on settings page 2013.11.07 - version 2.5 * More robust permalink handling * Fix limited feeds where individual feeds exclude products 2013.11.06 - version 2.4 * Allow gpf_start and gpf_limit to be passed to generate a part-feed 2013.09.14 - version 2.3 * Bing now require a tab separated file 2013.07.17 - version 2.2.2 * Support for adwords_grouping and adwords_label tags for more detailed ad targetting 2013.07.03 - version 2.2.1 * Allow additional images to be excluded from Google feed via a filter 2013.07.02 - version 2.2 * Support for "identifier_exists" attribute 2013.01.03 - version 2.1.1 * Updater fix 2013.01.03 - version 2.1 * Availability also accepts "out of stock" as a valid value 2012.11.07 - version 2.0 * Refactor, adds support for bing.com feeds 2012.06.28 - version 1.5.5 * Don't include hidden products in the feed 2012.06.20 - version 1.5.4 * Avoid issues when WordPress is running in a sub-folder 2012.05.30 - version 1.5.3 * Google limit text to 10,000 characters, trim to fit 2012.05.17 - version 1.5.2 * Avoid over-escaping some strings 2012.03.22 - version 1.5.1 * Fix JS/CSS urls 2012.03.22 - version 1.5 * Allow products to be excluded from the feed * Added woo updater 2012.03.19 - version 1.4 * Support for product stock status 2012.02.04 - version 1.3 * Support for multiple product images using g:additional_image_link 2011.01.05 - version 1.2 * Optimisations for large stores * Better handling of products with no images * Price formatting changes * US tax handling changes in line with Google's product feed guidelines 2011.11.27 - version 1.1 * Allow feed to be downloaded from admin page 2011.11.17 - version 1.0 * First Release