*** Order Tags Changelog ***

2024-09-10 - version 4.1.0
* Note: This is a milestone release, please ensure you read the contents of this changelog and we recommend performing this update on a staging/development environment and testing before updating the extension on a production website, clear all caches after updating
* Add: Set if coupon (advanced) option allowing order tags to be set based on if the order used coupon(s), with more granular control over the coupon code conditions
* Add: Set if item meta data option allowing order tags to be set based on if the order contain an item which has specific meta data
* Update: Operators information to be more descriptive on each operator based field
* Update: Trim conditions refactoring
* Fix: Set if coupon may not correctly set tags related to coupons in newer WooCommerce versions, as coupon storage has been changed in core WooCommerce to be non-meta based

2024-09-04 - version 4.0.0
* Note: This is a milestone release, please ensure you read the contents of this changelog and we recommend performing this update on a staging/development environment and testing before updating the extension on a production website, clear all caches after updating
* Add: Composer WooCommerce Quality Insights Toolkit (QIT) dependency
* Add: Orders list filter option of none to allow orders list to be filtered by orders which do not have a tag
* Add: Orders list filter options now displayed hierarchically, based on order tag parent/child relationships
* Add: Orders list bulk action options now displayed hierarchically, based on order tag parent/child relationships
* Add: Orders list bulk action options now include remove order tags to allow tags to be removed in bulk via orders list
* Add: Order tags are now displayed hierarchically, based on order tag parent/child relationships
* Add: wcot_order_tags_bulk_actions_remove_order_tags filter hook
* Add: wcot_order_tags_bulk_actions_set_order_tags filter hook
* Add: wcot_order_tags_get_order_tags_html function
* Add: wcot_order_tags_make_hierarchical function
* Add: wcot_order_tags_remove_order_tag function
* Fix: Orders originating from WooCommerce Cart/Checkout blocks draft orders, can get incorrect tags applied in the scenario where a customer adds various items to cart, the order gets tagged, then the contents are changed by the customer before final order creation

2024-08-28 - version 3.2.0
* Add: .pot to languages folder
* Add: Requires WooCommerce dependency header
* Add: wp_set_script_translations to JS assets
* Update: JS assets to include sprintf const
* Update: PHP requires at least 7.4.0
* Update: WooCommerce requires at least 8.5.0
* Update: WooCommerce tested up to 9.2.3
* Update: WordPress requires at least 6.3.0
* Update: WordPress tested up to 6.6.1

2024-06-24 - version 3.1.0
* Add: Page for bulk set tags, improving the previous method of typing a long query parameter based URL, note this page is only accessible via a short direct link, see documentation for info
* Update: Bulk set tags nonce validation improvements
* Update: WooCommerce tested up to 9.0.1
* Update: WordPress tested up to 6.5.4

2024-05-24 - version 3.0.0
* Note: This is a milestone release, please ensure you read the contents of this changelog and we recommend performing this update on a staging/development environment and testing before updating the extension on a production website, clear all caches after updating
* Add: not_contains operator to set if meta data option
* Add: starts_with operator to set if meta data option
* Add: ends_with operator to set if meta data option
* Add: not_contains operator to set if product meta data option
* Add: starts_with operator to set if product meta data option
* Add: ends_with operator to set if product meta data option
* Update: Adding trailing ; to inline order tag styles for code consistency, even though stripped via wp_kses_post()
* Update: composer.json and composer.lock to woocommerce/woocommerce-sniffs 1.0.0
* Update: phpcs.xml codesniffs
* Update: WooCommerce tested up to 8.9.1
* Update: WordPress tested up to 6.5.3
* Fix: Contains set if meta data option should be case insensitive
* Fix: Contains set if product meta data option should be case insensitive
* Fix: is_internal_meta_key was called incorrectly PHP notices get logged if using an internal meta key for set if meta data and/or set if product meta data

2024-04-11 - version 2.5.1
* Update: Woo.com links reverted to WooCommerce.com, due to WooCommerce backtrack
* Update: WooCommerce tested up to 8.7.0
* Update: WordPress tested up to 6.5.2

2024-01-16 - version 2.5.0
* Add: WooCommerce Cart/Checkout blocks compatibility
* Update: Changelog consistency

2023-12-22 - version 2.4.1
* Update: Activation notice
* Update: Changelog keys
* Update: Code consistency
* Update: Development assets
* Update: WooCommerce.com links to Woo.com
* Update: PHP requires at least 7.3.0
* Update: WooCommerce requires at least 7.9.0
* Update: WooCommerce tested up to 8.4.0
* Update: WordPress requires at least 6.1.0
* Update: WordPress tested up to 6.4.2
* Fix: The parameter at position #2 of get_terms() has been deprecated

2023-08-03 - version 2.4.0
* Add: High Performance Order Storage (HPOS) compatibility if WooCommerce version is 8.0.0 or higher, note that this version includes several changes for HPOS compatibility, it is recommended you perform this update on a staging/development environment before updating the extension on a production website regardless of whether HPOS enabled, HPOS and the compatibility in this extension are very new, use with caution
* Update: Development assets
* Update: PHP requires at least 7.2.0
* Update: WooCommerce requires at least 7.3.0
* Update: WooCommerce tested up to 7.9.0
* Update: WordPress requires at least 5.9.0

2023-05-31 - version 2.3.0
* Add: Order tag set if coupon option
* Update: WooCommerce tested up to 7.7.1
* Update: WordPress tested up to 6.2.2

2023-04-28 - version 2.2.0
* Note: This is a milestone release, please ensure you read the contents of this changelog and we recommend performing this update on a staging/development environment and testing before updating the extension on a production website, clear all caches after updating
* Add: Text color option on order tags
* Add: wcot_order_tags_color_text_default filter hook
* Add: wcot_order_tags_set_if_product_variations filter hook to allow product variations to be selected in set if product assignment when returned true
* Add: Additional class with order tag slug append to order tag html
* Add: Set if product variations information when managing order tags
* Update: Renamed existing color option to background due to new text color option
* Fix: Set if fields which return results via AJAX can not be searched like non-AJAX fields

2023-03-03 - version 2.1.0
* Add: Set if product meta data option allowing order tags to be set based on if the order contains a product which has specific meta data
* Update: Meta data related field descriptions
* Update: Minor development assets
* Update: WooCommerce tested up to 7.4.1

2022-12-23 - version 2.0.1
* Update: WooCommerce tested up to 7.2.2
* Update: WordPress requires at least 5.4.0
* Update: WordPress tested up to 6.1.1

2022-08-23 - version 2.0.0
* Note: This is a milestone release, please ensure you read the contents of this changelog and we recommend performing this update on a staging/development environment and testing before updating the extension on a production website, clear all caches after updating
* Add: Set if meta data option allowing order tags to be set based on any order based meta data
* Add: Set if product tag option allowing order tags to be set if products in order have specific tag(s)
* Add: != operator to set if fields where number based operators used
* Add: Warning alert if trying to save an order tag without any "Set On" conditions
* Update: Set if customer, product and product category select2 fields on edit order tag screen now get data via AJAX request to increase performance
* Update: Enqueue of admin.js asset so limited to edit order tag screens for efficiency
* Update: UX improvements on edit order tag screen
* Update: Manage order tags notice to be more descriptive
* Update: WordPress tested up to version 6.0.1
* Update: WooCommerce tested up to version 6.8.1
* Fix: Edit order tag screen may become unresponsive for large stores with huge amounts of customer, product and/or product category data

2022-06-24 - version 1.7.0
* Update: Field descriptions on "set on" options when editing an order tag
* Update: WooCommerce tested up to version 6.6.1
* Fix: Setting of order tags may not work in some scenarios due to $order object not yet including all required data to set tags
* Fix: Subscriptions (posts with shop_subscription post type but not orders with subscriptions or renewal orders derived from a subscription) may incorrectly have had order tags set when should not, only orders based off the subscription should have order tags set

2022-05-28 - version 1.6.1
* Note: Order tags menu has been moved and can now be found under the WooCommerce menu item in the WordPress dashboard as opposed to the parent menu item in previous versions, this is to meet WooCommerce guidelines on extension menu structures
* Add: Select fields on the edit order tag page now include the ID of products, categories, customers, payment/shipping methods, etc to allow options to be differentiated/found quicker
* Update: Order tags menu moved to sub item of WooCommerce menu item
* Update: WordPress tested up to version 6.0.0
* Update: WooCommerce tested up to version 6.5.1

2022-04-30 - version 1.6.0
* Note: This version changes the order placed/update hooks previously used to woocommerce_new_order and woocommerce_update_order to ensure order tags get set succesfully for order placement/update functionality when third party themes, plugins, custom development, etc including WooCommerce API attempt this, we recommend performing this update on a staging/development environment and testing before updating the extension on a production website, clear all caches after updating
* Add: Order tags now get set when WooCommerce API used to place/update orders
* Add: Testing related files e.g. composer.json, phpcs.xml, etc for development purposes
* Update: Code refactoring
* Update: WordPress tested up to 5.9.3
* Update: WooCommerce tested up to version 6.4.1
* Fix: Order tags may not be set depending on order tag conditions and order data when using order list bulk actions
* Fix: Order tags not set if website does not use the woocommerce_thankyou hook
* Fix: Order tags not set if order updated through functionality where the woocommerce_process_shop_order_meta hook is not used

2022-03-25 - version 1.5.0
* Note: This version includes several changes to asset enqueues, update conditions and more, please ensure you read the contents of this changelog, it is recommended you perform this update on a staging/development environment before updating the extension on a production website, clear all caches after updating to ensure all assets are reloaded
* Add: Set if order status
* Add: WCOT_Order_Tags_Translation class
* Add: Minified CSS/JS assets created and enqueued
* Add: WooCommerce not installed/activated notice
* Update: CSS assets now SCSS
* Update: <code> tags used around default color and filter hook information when editing a tag
* Update: Enqueues plugins_url function calls so folder name not included that could effect installations where folder renamed
* Update: Upgrade conditions now use version_compare
* Update: WordPress tested up to version 5.9.2
* Update: WooCommerce tested up to version 6.3.1
* Fix: Translations may not load due to load_plugin_textdomain not hooked on init

2021-11-13 - version 1.4.0
* Add: Set order tags via bulk actions on orders list
* Update: wcot_order_tags_get_all_order_tags() function should be define taxonomy via the taxonomy argument in an arguments array
* Update: WordPress tested up to version 5.8.2
* Update: WooCommerce tested up to 5.9.0
* Fix: Order subscription renewals may not set shipping instances/zones based order tags
* Fix: WCOT_Order_Tags_Filter::filter() does not use wcot_order_tags_get_all_order_tags() function

2021-09-08 - version 1.3.0
* Add: Set on order subscription renewal
* Add: WooCommerce Subscriptions compatibility
* Update: WooCommerce tested up to 5.6.0

2021-08-07 - version 1.2.1
* Add: Bulk set order tags functionality to allow set of order tags in bulk on all orders via wcot_order_tags_set_tags_bulk query var, see documentation for details
* Add: set_tags_bulk() function to WCOT_Order_Tags_Set class
* Fix: Order tag may fail set depending on order type when customer is a guest
* Fix: Order tag can lose its settings on edit depending on server setup potentially due to term caching and/or slow $wpdb query
* Fix: Order tags dashboard menu item may not be highlighted depending on use of other plugins/extensions parent_file filters and their priorities
* Fix: Order tag set may throw fatal error/PHP notices if attempted to be set on a refund order id using custom development

2021-08-05 - version 1.2.0
* Add: Set if customer role
* Add: Set if payment method
* Add: Set if product
* Add: Set if product category
* Add: Set if mode
* Add: wcot_order_tags_customer_roles filter to allow inclusion of customers with custom roles in set if customer field
* Update: Tag field descriptions
* Update: Return less customer data when querying customers on order tag edit for performance
* Update: WordPress tested up to version 5.8
* Update: WooCommerce tested up to version 5.5.2
* Fix: PHP undefined variable notice when placing orders for virtual products order confirmation screen if set if shipping method used

2021-07-30 - version 1.1.3
* Fix: Assigning tag via shipping method may cause undefined method error

2021-07-24 - version 1.1.2
* Fix: wcpot_order_tag_taxonomy_args has incorrect prefix

2021-07-18 - version 1.1.1
* Add: Hyphen character to tag column on orders list if no order tags so consistent with WordPress
* Update: Field descriptions line height on tag edit
* Update: Field descriptions to be more descriptive on tag edit
* Update: Checkbox expand box styling on tag edit so consistent with WordPress styling
* Fix: Setting description typos
* Fix: Changelog dates incorrect

2021-07-17 - version 1.1.0
* Add: Set if shipping method instance setting
* Add: Set if shipping zone setting
* Update: "Set on" setting description
* Update: Title tooltip to use WooCommerce tooltips as opposed to title attribute
* Update: Minor order tag display styling tweaks
* Fix: Order tags may still be applied after customer, shipping method/zone deletion until order tag updated

2021-06-23 - version 1.0.0
* New: Initial release