*** WooCommerce Product Search *** 2024.01.31 - version 5.2.0 * Update - WordPress 6.4 compatible. * Update - WooCommerce 8.5 compatible. * Update - Requires at least WooCommerce 8.2. * Update - Requires at least PHP 7.4. * Add - Added compatibility plugin header fields. * Fix - Fixed instances of wrong spelling of WPML. * Update - Updated the translation template. * Update - Updated the included translations. * Fix - Limit set on Product Search Field without effect on results included. * Dev - Added a cap of 100 on the requestable results for the Product Search Field which can be overridden via the product_search_limit filter. * Dev - Revised the WPML compatibility to determine extended cache context. * Add - Added the woocommerce_product_search_engine_cache_context filter. * Add - Added the woocommerce_product_search_engine_stage_cache_context filter. * Add - Added the woocommerce_product_search_filter_product_loop_cache_context filter. * Add - Added the woocommerce_product_search_term_control_get_term_counts_cache_context filter. * Update - Added the .wc-block-components-notice-banner.is-info selector in addition to the previous .woocommerce-info selector when updating filtered products. 2023.12.18 - version 5.1.1 * Dev - Revised coherency tests in the query control on incoming request values to prevent odd values from causing errors. * Dev - Made our query control less restrictive for backend taxonomy term requests like wp-admin/edit.php?pa_example=foo&post_type=product where we would previously filter out variable products with no variations related to a requested term. * Dev - Revised query control to pagination conditions. 2023.12.15 - version 5.1.0 * Update - WooCommerce 8.4 compatible. * Fix - Resolves an issue where products out of stock are not shown in the administrative section when the setting to "Hide out of stock items from the catalog" is enabled. 2023.11.23 - version 5.0.4 * Fix - Use the order determined for Product Search Field instances to sort results appropriately. 2023.11.22 - version 5.0.3 * Update - Disables the render cache by default to avoid issues with inconsistent page content. 2023.11.22 - version 5.0.2 * Fix - Fixes a PHP Fatal error triggered on plugin activation due to a missing resource. * Fix - Fixes PHP Notices due to global $wp_query not set when invoking certain functions. * Fix - Resolves an issue when clearing filters and mixed protocols are used. * Fix - Fixes render cache issues when Product Filter Reset and Product Search Filter elements with different origins and targets are used on different pages. 2023.11.21 - version 5.0.1 * Fix - Solves issues with cases where predetermined context was not observed for products shown. 2023.11.10 - version 5.0.0 * Update - WordPress 6.4 compatible. * Update - WooCommerce 8.3 compatible. * Update - Requires at least WooCommerce 7.9. * Update - This major new release introduces a new high performance scalable search engine and cache system, engineered specifically for WooCommerce and created from the ground up. * Update - This new search engine is unique in that it provides fast, scalable, complete and sound results for any search and filter combinations, including those involving mixes of keyword searches, categories, attributes, tags, prices, ratings, products in stock, products on sale, etc. * Add - Introduces the new high performance search engine. * Add - Introduces the new integrated and independent high performance cache system. * Add - Added the built-in Transitory Cache. * Add - Added the built-in File Cache. * Add - Added support for Redis Cache to the integrated cache system. * Add - Added support for Memcached to the integrated cache system. * Add - Added support for the WPS_REDIS_CACHE_API constant which can be used to force use of the built-in Redis API (instead of the PHPRedis API when available). * Dev - Certain worker log entries are now only made if scheduling was likely unsuccessful and explicit debugging is enabled for the extension. * Add - Added support for the WPS_DEBUG_VERBOSE constant, used to log more details, added the wps_log_verbose() function and related method. * Add - Added support for the WPS_DEBUG_ENGINE_TIMER constant, used to log timing information related to the internal engine. * Add - Added support for the WPS_DEBUG_ENGINE_TIMER_VERBOSE constant, which enables extended timing information. * Add - Added support for the WPS_CACHE_DEBUG constant, which allows to log cache-specific information. * Remove - Removed unnecessary deprecated WPML filter icl_set_current_language. * Fix - Variable products would not be included in results for brands. * Fix - Variable products would not be included in results for vendors. * Fix - Changes to brand terms would not cause the index for related products to be updated. * Fix - Changes to vendor terms would not cause the index for related products to be updated. * Add - Added support for the WPS_RENDER_CACHE constant which enables or disables all render caching, enabled by default. * Add - Added the woocommerce_product_search_render_cache filter which determines if render caching is used for instances. * Remove - Removed the woocommerce_product_search_filter_stock_stock_counts_cache_expire filter. * Add - Added the woocommerce_product_search_filter_renderer_data_cache_lifetime filter. * Add - Added the woocommerce_product_search_filter_renderer_render_cache_lifetime filter. * Add - Added the woocommerce_product_search_field_render_cache_lifetime filter. * Fix - Product filter renderer loop also needs to check for product-page parameter to retry without pagination. * Dev - Updated the block registration calls to replace the use of deprecated properties. * Dev - Removed admin info rendering code dependent on an old thumbnail setting shop_thumbnail_image_size not used since WooCommerce 3.3.0. * Add - Added support for the woocommerce_product_search_engine_cache_update action which allows to notify the cache system that an update is required. * Add - Added the woocommerce_product_search_indexer_purge_start action to signal indexer purge start. * Add - Added the woocommerce_product_search_indexer_purge_end action to signal indexer purge end. * Add - Added the woocommerce_product_search_engine_process_start action to signal engine processing start. * Add - Added the woocommerce_product_search_engine_process_end action to signal engine processing end. * Add - Added the woocommerce_product_search_get_cache_instance filter to allow to provide custom caches. * Add - Added the woocommerce_product_search_cache_slot_path filter to allow to modify the cache slot path. * Add - Added the woocommerce_product_search_engine_cache_group_suffix filter which allows to modify the cache group suffix for further distinction of cache groups. * Add - Added the woocommerce_product_search_cache_dir filter which allows to determine the root cache directory. * Add - Added the woocommerce_product_search_file_cache_min_free_disk_space filter which allows to determine the minimum free disk space required for the File Cache during runtime. * Add - Added the woocommerce_product_search_engine_stage_apply_object_limit filter. * Add - Added the woocommerce_product_search_engine_stage_parameters filter. * Add - Added the woocommerce_product_search_engine_stage_posts_use_wp_query filter. * Add - Added the woocommerce_product_search_filter_renderer_data_cache_lifetime filter. * Add - Added the woocommerce_product_search_filter_renderer_render_cache_lifetime filter. * Update - Updated the translation template. * Update - Updated the German translations (formal and informal) for Germany, Austria and Switzerland. * Update - Updated the Spanish translation. * Update - Updated the French translation. * Update - Updated the Indonesian translation. * Update - Updated references to woocommerce.com to point to woo.com. * Update - Updated the support links to point to https://woo.com/my-account/contact-support/. 2023.08.31 - version 4.16.0 * Update - WordPress 6.3 compatible. * Update - WooCommerce 8.1 compatible. * Update - Requires at least WooCommerce 7.8. * Update - WordPress 6.4-alpha compatible. * Fix - Fixed a documentation URL with a trailing space. * Update - Revised a section of the help tab for clarity and to point to blocks, widgets and shortcodes documentation sections. * Update - Updated the translation template. * Update - Updated the included translations. 2023.07.28 - version 4.15.0 * Update - WordPress 6.2 compatible. * Update - WordPress 6.4-alpha compatible. * Update - WooCommerce 7.9 compatible. * Update - Requires at least WooCommerce 7.7. * Update - Requires at least PHP 7.3. * Dev - Added guards to avoid data interference from unrelated code in the Product Search Field rendering code, fixes "undefined" displayed for invalid entries. 2023.06.19 - version 4.14.0 * Update - WordPress 6.2 compatible. * Update - WordPress 6.3-alpha compatible (re-tested). * Update - WooCommerce 7.8 compatible. * Update - Requires at least WooCommerce 7.4. * Update - Requires at least PHP 7.2. * Update - WooCommerce HPOS compatible. * Fix - Fixed navigation feature check which missed to check if feature is enabled besides its existence. 2023.05.22 - version 4.13.1 * Update - WordPress 6.2 compatible. * Update - WooCommerce 7.7 compatible. * Fix - Fixes the WooCommerce dependency checks on multisite setups. * Update - Revised changelog entries for the version history parser as of 4.0.0. 2023.05.18 - version 4.13.0 * Update - WordPress 6.2 compatible. * Update - WordPress 6.3-alpha compatible. * Update - WooCommerce 7.7 compatible. * Update - Revised the internal settings API. * Update - Revised the WooCommerce dependency checks. * Update - Removed the legacy code in woo-includes. * Update - Made the logger resilient to hosts that remove the getmypid() function. * Fix - Fixes a PHP Deprecated notice of passing null to a parameter of type string during version comparison. 2023.04.17 - version 4.12.0 * Update - WordPress 6.2 compatible. * Update - WordPress 6.3-alpha compatible. * Update - Requires at least WordPress 6.0. * Update - WooCommerce 7.6 compatible. * Update - Requires at least WooCommerce 7.0. 2023.02.13 - version 4.11.0 * Update - WordPress 6.1 compatible. * Update - WordPress 6.2-beta compatible. * Update - WooCommerce 7.4 compatible. * Add - Added index status information display to the Admin Bar while indexing is incomplete. * Add - Added an option in the Index section to enable or disable the status information display in the Admin Bar. * Add - Added the WPS_ADMIN_BAR_STATUS constant which can be set to true to always show status information in the Admin Bar. * Update - Updated the translation template. * Update - Updated the included translations. 2022.12.30 - version 4.10.0 * Update - WordPress 6.1 compatible. * Update - WooCommerce 7.2 compatible. * Update - Requires at least WordPress 5.8. * Update - Requires at least WooCommerce 6.0. * Dev - Using WP_Rewrite's $pagination_base instead of hardcoded 'page' as pagination permalink base. * Add - Added the woocommerce_product_search_pagination_base filter. * Dev - Guarded non-accurate filter response optimizations against producing empty or incomplete content when errors occur during buffer processing. 2022.11.22 - version 4.9.0 * Update - WordPress 6.1 compatible. * Update - WooCommerce 7.1 compatible. * Dev - This release is focused on internal optimizations that bring substantial performance gains, with measured operational improvements in excess of 1000% in numerous cases. * Dev - Decreases the sever load while attending search and filtering requests. * Dev - Improves the overall query response performance with targeted code optimizations. * Dev - Improves the search engine performance with faster database queries. * Dev - Improves the search engine performance with faster dataset handling operations. 2022.09.05 - version 4.8.0 * Update - WordPress 6.0 compatible. * Update - WooCommerce 6.9 compatible. * Fix - Fixed an issue where certain inline scripts were dropped on subsequent wp_enqueue_scripts invocations, thus live search and filtering would not work, observed with block-based themes. * Fix - Fixed inappropriate price limits obtained in certain execution flows where the post_status for the product post type was inadequate for the $wp_query. 2022.07.12 - version 4.7.0 * Update - WordPress 6.0 compatible. * Update - WooCommerce 6.7 compatible. * Update - Updated indexer for PHP 8.x compatibility fixing PHP Deprecated: Automatic conversion of false to array is deprecated 2022.04.01 - version 4.6.0 * Update - WordPress 6.0 compatible. * Update - WooCommerce 6.4 compatible. * Fix - Resolves an issue where a product menu item could cause the price filter to extend the price limits to the full range of products. * Dev - Accessibility improvement to avoid prematurely hiding results provided by the Product Search Field when long clicks or secondary clicks are used. * Update - Organized the extension's settings sections into its Settings submenu within the new WooCommerce Admin menu. * Fix - Resolved an issue where excluded terms would have no effect with WPML. * Add - Added the woocommerce_product_search_request_term_ids_include filter. * Add - Added the woocommerce_product_search_request_term_ids_exclude filter. * Fix - Fixes price slider handle positions should reflect correct current values set when present in page request. * Fix - Fixes price slider's upper limit handle should react on first change. 2022.03.21 - version 4.5.0 * Update - WordPress 6.0 compatible. * Update - WooCommerce 6.3 compatible. * Dev - Revised restrictive term processing limits, potentially yielding incomplete results. * Dev - Improved tag filter consistency avoiding the inclusion of tags which are not related to products within the current context. * Dev - Improved filter query performance slightly with added restrictions that exclude marker entries (related to count and term queries). * Fix - Corrected tag product counts for those with no related products within current context, to show zero when applicable. * Dev - Avoid confusion over notice related to reports provided, removing it on the extension's reports. * Fix - Fixed Request-URI Too Long errors caused by input field generation bug on Queries report. * Add - Added the CSV export feature to the report on Queries. 2022.02.09 - version 4.4.0 * Update - WordPress 6.0 compatible. * Update - WooCommerce 6.2 compatible. * Update - Requires at least WordPress 5.6. * Update - Requires at least WooCommerce 5.8. * Update - Updated documentation links. * Update - Updated the Product Search Field block to include the WPML Language Filter option. * Dev - Reverted block registration to desired order as the block registry does not offer them in reverse order anymore (tested with WP 5.9 & WP 6.0). 2022.01.23 - version 4.3.0 * Update - WordPress 5.9 compatible. * Update - WooCommerce 6.1 compatible. * Update - Requires at least WooCommerce 5.6. * Add - Attributes from variable products that are not used for variations are added to the index for their variations. * Add - Indexer administrative section reloads hourly to renew status nonce. * Fix - Fixed depth not taken into account when rendering hierarchical term filters. * Fix - Fixed option show ancestors had no effect when disabled and rendering a product category filter. 2021.11.25 - version 4.2.1 * Fix - Fixes a comparison bug in the redirect_canonical filter used to avoid redirect loops in certain circumstances. * Dev - Increased the implicit limit of items for category and attribute filter dropdowns (using 100000 to override the default used by the selectize component's maxOptions parameter). * Add - Added the woocommerce_product_search_selectize_max_options filter. 2021.11.09 - version 4.2.0 * Update - WordPress 5.8 compatible. * Update - WooCommerce 5.9 compatible. * Update - Requires at least WooCommerce 5.5. * Add - Added the woocommerce_product_search_use_engine filter. * Add - Added compatibility with the WooCommerce Composite Products extension (skip handling its AJAX requests). 2021.11.02 - version 4.1.0 * Update - WordPress 5.8 compatible. * Update - WooCommerce 5.8 compatible. * Dev - Improved filter and search results consistency with Catalog Visibility options for products. * Fix - Fixed limited processing when PHP memory_limit is set to -1 to have no memory limit. * Fix - Fixed a PHP Notice when inconsistent data is encountered while indexing a product variation. * Dev - Legacy widgets are not offered in the block editor as of this release by default. * Add - Added the WPS_LEGACY_WIDGETS constant which can be set to true to enable legacy widgets offered in the block editor. * Fix - Fixed missing fill color in some block icons. * Dev - Improved indexing schedule queries and reduced scheduling overhead. * Fix - Fixed not applying weights on product filter search. * Fix - Fixed query time logged twice on product filter search. * Fix - Fixed blinker timeout set to 0 should disable it, for product search field and product filter search field. 2021.08.06 - version 4.0.1 * Fix - Fixes issues with dropdown style not being applied to category or attribute filters (appearing to be haphazard due to disorderly Javascript execution paths). * Dev - Omitting shop page check for customizer so block widget content is shown regardless of setting to show on shop pages only. 2021.08.04 - version 4.0.0 * Update - WooCommerce 5.5 compatible. * Update - Requires at least WooCommerce 5.0. * Update - WordPress 5.8+ full widgets block editor compatibility. * Add - Full block editor compatibility with new blocks added for all search and filter facilities provided by the extension. * Add - Added the Product Search Field block. * Add - Added the Product Filter – Search block. * Add - Added the Product Filter – Category block. * Add - Added the Product Filter – Attribute block. * Add - Added the Product Filter – Price block. * Add - Added the Product Filter – Rating block. * Add - Added the Product Filter – Reset block. * Add - Added the Product Filter – Sale block. * Add - Added the Product Filter – Stock block. * Add - Added the Product Filter – Tag block. * Add - Added the Product Filter – Products block. * Dev - Blinded inline scripts against unwanted modification during content rendering (wptexturize etc). * Add - Added the woocommerce_product_search_is_shop filter. * Add - Added the woocommerce_product_search_is_shop() API function. * Add - Added support for shop_only attributes on filter shortcodes and corresponding API functions. * Fix - Fixed automated search filter output in wp_footer corrupting responses to certain JSON requests, e.g. filter block output for ServerSideRender. * Fix - Fixed Javascript errors when trying to set properties of certain document elements when absent. * Update - Removes the assistant as it is superfluous if the widgets block editor is used. The block browser can be used instead. * Update - Requires fully updated database, removed backward-compatibility for configurations that have no object_term table. 2021.06.16 - version 3.8.0 * Update - WordPress 5.8 compatible. * Update - WooCommerce 5.4 compatible. * Fix - Fixed add-to-cart links produced for variable products when the option to "Enable AJAX add to cart buttons on archives" is disabled, the button would yield the shop page with an error shown instead of taking to the product page. * Add -Added the French translation. * Fix - Fixed translation errors. * Update - Updated and added missing translations. * Dev - Avoid redirect loops caused by $requested_url transformation done in wp-includes/canonical.php's redirect_canonical() that changes urlencoded() characters in uppercase to lowercase and causes a comparison failure with the $redirect_url. * Add - Added the woocommerce_product_search_avoid_redirect_canonical_loops filter. * Remove - Removed options to Use the Shop URL and use_shop_url that are not needed and could inadvertently originate inconsistent results. * Add - Added Product Filter – Stock widget. * Add - Added [woocommerce_product_filter_stock] shortcode. * Add - Added woocommerce_product_search_filter_stock() API function. * Add - Added woocommerce_product_search_filter_stock_stock_counts filter. * Add - Added woocommerce_product_search_filter_stock_product_ids_by_stock_status filter. * Add - Added the woocommerce_product_search_service_post_ids_for_request action. * Fix - Fixed disabled live filtering on category, attribute or tag filters had no effect. * Add - Added the Filter option to the Product Filter – Price widget, allows to disable live filtering via price input fields and slider. 2021.04.11 - version 3.7.0 * Update - WordPress 5.8 compatible. * Update - WooCommerce 5.2 compatible. * Update - Requires at least WordPress 5.5. * Update - Requires at least WooCommerce 4.9. 2021.03.25 - version 3.6.2 * Update - Updated WPML / WooCommerce Multilingual compatibility to support untranslated products related to translated terms. Requires rebuilding the index to take effect. * Fix - Solved links to translated taxonomy terms leading to 404s with WPML as they are not correctly recognized without the lang URL parameter. * Dev - Improved the way live search field results are obtained to take appropriate variation-related results into account. * Fix - Fixed locale-specific issues with searches not producing expected results when search terms contain accented characters. Rebuilding the index is recommended if such issues are present. 2021.03.15 - version 3.6.1 * Fix - Fixed PHP 8 deprecated notices in our term walker class due to required parameters following a parameter unnecessarily declared as optional. * Fix - Fixed product taxonomies named using non-alphanumeric characters would not have their terms indexed. * Fix - Fixed issues where terms with no related products should be shown, they were not included (requires rebuilding the index to take effect). * Fix - Using specific Font Awesome solid (900) icon set to avoid clashes with the reduced icon set in its regular (400) icon set. Fixes issues with icons used in Storefront appearing incorrectly. * Fix - Fixed filter reset not appropriately shown when filters are displayed as type "Select". * Dev - Improved price slider UX with added support for touch events. 2021.03.06 - version 3.6.0 * Update - WordPress 5.6 compatible. * Update - WordPress 5.7 compatible. * Update - WooCommerce 5.0 compatible. * Update - WooCommerce 5.1 compatible. * Dev - Improved welcome styling. * Update - Updated included fonts. * Update - Updated the Storefront-specific CSS to explicitly use font-weight 900 for star rating, as Storefront (currently at 3.5.0) only imports the 900 font-weight Font Awesome Free but we also use 400, it got overridden resulting in hollow stars instead of solid ones. * Add - Added support for WooCommerce Admin navigation with sections for overview, reports, settings and the assistant. * Fix - Fixed incorrect pagination links produced by the [woocommerce_product_filter_products] shortcode in certain conditions. * Fix - Fixed our cron test not indicating an error when performing the HTTP request using the POST method fails to obtain a response. * Fix - Fixed message indicating deferred processing should not be logged when there are no further variations to process. * Update - Updated the indexing strategy to handle extended cases of product modifications via API and keep our index in sync. * Update - Updated the compatibility with WPML to solve issues introduced by WPML filter hooks that revert terms to their originals instead of their translations. * Fix - Fixed an issue where filter thumbnails would initially not be displayed when dropdown style is used for category or attribute filters. 2021.01.14 - version 3.5.1 * Fix - Fixed products on back-order would not be included in results when there are more products out of stock than in stock. 2021.01.08 - version 3.5.0 * Update - WordPress 5.6 compatible. * Update - WooCommerce 4.9 compatible. * Update - Requires at least WooCommerce 3.6. * Fix - Fixed an issue where ineligible products could be included in filtered results when products out of stock should be hidden and ineligible variations were in stock. * Remove - Dropped the unnecessary 'wpml' option of the [woocommerce_product_filter] shortcode and the Product Filter – Search widget. Appropriate WPML settings should be used to assure language-specific consistent filter results based on ICL_LANGUAGE_CODE context. * Update - Updated index processing to evaluate short descriptions across variable products and variations so products can be found based on their content when variations should be identified based on their parent's short description. 2020.12.17 - version 3.4.0 * Update - WordPress 5.6 compatible. * Update - WooCommerce 4.8 compatible. * Update - Requires at least WooCommerce 3.5. * Update - Updated upgrade info. 2020.11.13 - version 3.3.0 * Update - WordPress 5.5 compatible. * Update - WooCommerce 4.7 compatible. * Update - Requires at least WooCommerce 3.3. * Add - Added the WPS_DEFER_VARIATIONS_THRESHOLD constant that regulates the maximum number of variations processed at save. * Fix - Solved issues when indexing variable products with many variations by using deferred processing of the bulk of variations. * Fix - Fixed "Text for no selection" option was not visible when Select was chosen as Style in Category and Attribute filter widgets. 2020.11.01 - version 3.2.0 * Update - WordPress 5.5 compatible. * Update - WooCommerce 4.6 compatible. * Add - Added support for filtering the results presented by the [products] shortcode. * Add - Added the WPS_SHORTCODES_PRODUCTS_FILTER constant which when set as true enables automatic filtering of all instances of the [products] shortcode. * Add - Added the [woocommerce_product_search_filter_shortcode_products] shortcode. * Add - Added the woocommerce_product_search_filter_shortcode_products() API function. * Add - Added the woocommerce_product_search_filter_shortcode_products_enable() API function. * Add - Added the woocommerce_product_search_filter_shortcode_products_disable() API function. * Add - Added the woocommerce_product_search_filter_shortcode_products filter. * Add - Added automatic support for filtering the results presented by the Divi Shop module. * Add - Added the WPS_DIVI_SHOP_FILTER constant which when set as false disables automatic filtering of all instances of the Divi Shop module. * Add - Added the woocommerce_product_search_filter_divi_shop filter. * Fix - Fixed issues with our price filter and WPML multicurrency. * Fix - Fixed price filter range issues for variable products so that in-between values are treated correctly and bring up results. * Fix - Fixed a missing check for array type to prevent warning related to Countable. 2020.08.22 - version 3.1.1 * Dev - Substantially improved query processing performance with a revised algorithm, fixed overhead in conjunctive term query. * Add - Added automatic database update path for minor revisions. 2020.08.19 - version 3.1.0 * Update - WooCommerce 4.4 compatible. * Update - Replaced use of deprecated function woocommerce_reset_loop() with wc_reset_loop() when available (as of WC 3.3). * Other - Noting that previously introduced woocommerce_product_search_query_vars and woocommerce_product_search_query_vars_intersect filters are not used and considered removed. * Fix - Fixed potential database version number update miss and resetting internal table reference to force cache refresh. * Fix - Fixed potential execution time issues when index processing is initiated on the same request as the database update. * Update - Updated settings HTML to avoid the undesired edit prompt when saving changes. * Update - Guarded update procedure against inconsistent caching systems like W3 Total Cache and WP Engine's object cache which do not recognize changed options properly. 2020.08.12 - version 3.0.0 * Update - This release includes major improvements aimed at further optimizing our search engine's performance and enhancing its search and filtering features. * Update - WordPress 5.5 compatible. * Update - WordPress 5.6 (alpha) compatibility tested. * Update - WooCommerce 4.3 compatible. * Update - Requires at least WordPress 5.0. * Update - Requires at least WooCommerce 3.0. * Dev - Enhanced the search engine's indexing features to optimize term handling. * Add - Added the woocommerce_product_search_process_query_object_term_limit filter. * Fix - Fixed a wrong variable used in category filter when showing parent navigation. * Fix - Fixed an issue with incorrect term counts, due to the wrong variable used in the term count evaluation for hierarchical taxonomies. * Fix - Fixed wrong product counts with variable products and product filters (faceted searches), where certain product filter combinations would show more products related to terms than were actually available. * Update - Improved search weight handling for product categories so that weights of parent categories are taken into account in their child categories. * Update - Improved product indexing to sync to changes in terms from product taxonomies. * Update - Improved search engine performance thanks to optimizations related to object type lookups. * Add - Added support for role-based performance caching. * Add - Added the WPS_ROLES_CACHE constant to control role-based caching. * Add - Added the wps_cache_get() API function (allows override). * Add - Added support for group-based performance caching with Groups https://wordpress.org/plugins/groups/. * Add - Added the WPS_GROUPS_CACHE constant to control group-based caching. * Add - Added the wps_cache_set() API function (allows override). * Add - Introduced fixed and adaptive object limits for scalability trade-offs on very large product sets, where complete result sets are QoS unfeasonable while incomplete result sets are QoS acceptable. * Add - Added the WPS_OBJECT_LIMIT constant that controls fixed or adaptive object limits, integer for fixed limit, 0 for unlimited, 'AUTO' or 'AUTOREPORT' for adaptive limits. * Add - Added the WPS_OBJECT_LIMIT_FACTOR constant that controls adaptive object limits. * Update - Improved price handling queries performance and avoided duplicate queries. * Update - Reduced rating filter footprint reducing generic queries. * Fix - Fixed issues with on sale and rating filters cancelling each other. * Update - Solved and improved resilience to interference from other plugins hooked on the shutdown action, affecting our filter responses. * Add - Added the woocommerce_product_search_shutdown_remove_all_actions filter. * Update - Solved interference with filter requests from other plugins that hook on the 'query_vars' filter, e.g. WCS adds 'sku' creating a conflict with filter requests for front page shops. * Add - Added the woocommerce_product_search_query_vars and woocommerce_product_search_query_vars_intersect filters. * Update - Improved the [woocommerce_product_filter_products] shortcode performance by avoiding duplicate queries that can occur when plugins request page content outside main loop. * Update - Increased cache lifetime for more dynamic data to 15 minutes. * Fix - Fixed result count string not translated when products shortcode is used. * Fix - Solved issues with unrequired product filter request redirects. * Fix - Fixed pagination link highlight when current page exceeds total page results count. * Fix - Fixed filter request issues for Shops on Front. * Fix - Fixed filter request issues for [woocommerce_product_filter_products] on Front. * Update - Improved filter request performance and resilience also for unprocessed DOM. * Add - Added the woocommerce_product_search_get_min_max_price filter. * Dev - Changed the reference for price filters to use lower bounds to determine inclusion in results. * Add - Added the option to go to page one results on filters applied and made it the default. * Dev - Reduced indexing start on activation. * Dev - Disabled problematic widget caching for now, which conflicts with object caching due to their dynamic content. * Update - Translations updated. 2020.04.05 - version 2.21.0 * Update - WooCommerce 4.0 compatibility. * Update - WordPress 5.4 compatibility. * Update - WordPress 5.5 (alpha) compatibility tested. * Fix - Fixed the use of the deprecated function wp_cache_reset which can cause fatal errors with certain cache implementations. 2020.03.16 - version 2.20.0 * Update - WooCommerce 4.0 compatible. * Update - WordPress 5.5 (alpha) compatibility tested. * Update - Updated minimum PHP 7.0 requirement. * Add - Added the option to sort results by popularity in the live Product Search Field. * Add - Added the option to sort results by rating in the live Product Search Field. * Add - Added the woocommerce_search_products_post_statuses filter to the extended product data store and using lookup table. * Add - Added support for WooCommerce REST API product search via the search engine. * Add - Added the WPS_EXT_REST constant that allows to override the REST API product search. * Add - Added generator meta tag for markup produced by our search engine. * Add - Added the woocommerce_product_search_process_query_product_taxonomies filter. * Add - Added support for filtering on brand product archives related to the WooCommerce Brands extension. * Add - Added support for keyword searches by brand related to the WooCommerce Brands extension (requires index rebuilding on existing datasets for search engine to produce keyword matches based on brand). * Add - Added the woocommerce_product_search_compat_woocommerce_brands_index filter. * Add - Added support for filtering on vendor product archives related to the WooCommerce Product Vendors extension. * Add - Added support for keyword searches by vendor related to the WooCommerce Product Vendors extension (requires index rebuilding on existing datasets for search engine to produce keyword matches based on vendor). * Add - Added the woocommerce_product_search_compat_woocommerce_product_vendors_index filter. * Fix - Fixed an issue with the option to include empty terms having no effect (hide empty terms disabled on product categories and attributes). * Fix - Fixed filter reset not appearing when on sale filter is active. * Fix - Fixed an issue when filtering by products on sale and by price with no eligible products would still produce results. * Fix - Fixed a PHP Notice when price filter without slider was used. * Fix - Fixed price filters without slider would not reset input fields. * Fix - Fixed price filter input fields would not trigger after clearing if previous value (before clearing) was input again. * Update - Improved price filter performance using WC lookup table. * Add - Added multi-currency WPML compatibility for price filtering (Note on 2.20.0). * Add - Added better consistency to price filtering with respect to the standard price filter (Note on 2.20.0). * Update - Noted that the current status of WC 4.0.0 & WooCommerce Multilingual 4.7.9 which do not support correct price filtering for manually set currency prices, adopted measures to remove WC_Query's posts_clauses filter during handling for consistency. * Update - Updated filter CSS against undesired anchor styling (text-decoration). * Add - Added the Product Filter – Rating widget. * Add - Added the [woocommerce_product_filter_rating] shortcode. * Add - Added the API function woocommerce_product_search_filter_rating() for use in templates etc. * Update - Updated some outdated links to documentation. 2019.12.09 - version 2.19.0 * Update - WooCommerce 3.8 compatibility re-tested. * Add - Added the new live filter for products on sale. * Add - Added the Product Filter – Sale widget. * Add - Added the [woocommerce_product_filter_sale] shortcode. * Add - Added the API function woocommerce_product_search_filter_sale() for use in templates etc. * Update - Updated all translations. * Fix - Fixed issues in the Indonesian translation (HTML entities and formatting). * Fix - Fixed the assistant taking inactive widgets into account. 2019.10.20 - version 2.18.0 * Update - Terms offered in taxonomy filters are now restricted to context on search results. * Fix - Fixed usage of undefined variable to obtain heading_id in search filter. * Update - Improved how search is handled for search results pages with the Product Filter – Search, allows to narrow down results with the filter. * Fix - Fixed uninitialized containers array in price filter. * Fix - Fixed PHP_INT_MAX used for maximum price instead of empty maximum value in price filter, would display the odd PHP_INT_MAX when products without prices were displayed only. * Update - Guarded against fatal errors produced if the WC_Product_Data_Store_CPT class is missing due to messed up loading we cannot control. * Add - Added Jetpack synergy improvement to have our search engine take over product searches and let Jetpack still handle other search queries. * Add - Added the woocommerce_product_search_jetpack_search_should_handle_query filter that allows to modify our override. * Update - WooCommerce 3.8 compatibility tested based on current WooCommerce 3.8.0-beta.1. 2019.09.21 - version 2.17.0 * Add - Added an option to the live Product Search field that allows to sort results by SKU. * Add - Added the woocommerce_product_search_field_product_title filter. * Add - Added the woocommerce_product_search_field_product_description filter. * Add - Added the woocommerce_product_search_field_product_price_html filter. * Add - Added the woocommerce_product_search_field_product_add_to_cart_html filter. * Fix - Fixed an issue with 404s obtained for filter requests directly on paginated results beyond the first page. * Fix - Fixed an issue with no products obtained with paginated results beyond the first page with the [woocommerce_product_filter_products] shortcode. * Fix - Fixed an issue where category or attribute filters rendered as dropdowns could end up disabled after applying a choice. * Fix - Fixed potencial PHP notices on uninitialized widget instance attributes for the Product Search Field and Product Filter – Search widgets. 2019.09.03 - version 2.16.0 * Add - Added the woocommerce_product_search_indexer_filter_content filter. 2019.08.29 - version 2.15.0 * Add - Added the formal German (Sie) translation. * Update - Updated the informal German (Du) translation. * Add - Added formal and informal translations for German (Austria). * Add - Added formal and informal translations for German (Switzerland). 2019.08.08 - version 2.14.0 * Add - Added the German translation. * Update - WooCommerce 3.7 compatibility tested. * Update - WordPress 5.3 alpha compatibility tested. 2019.05.28 - version 2.13.3 * Fix - Fixed an issue with dropdowns not being rendered as such. 2019.05.22 - version 2.13.2 * Update - WordPress 5.2 compatibility. * Update - Updated term order handling for product attributes as WC 3.6.x replaces termmeta order_pa_{$taxonomy} with order. * Add - Added support for sorting product attributes numerically, i.e. based on name_num "Name (numeric)". * Update - Improved front and back end resource dependency resilience (more robust checks for jQuery presence independent of load order). * Update - Updated the Spanish translation. * Add - Added the Indonesian translation. 2019.04.19 - version 2.13.1 * Update - Updated for compatibility with WooCommerce 3.6. * Dev - Replaced uses of deprecated functions. * Fix - Fixed a conflict with live product filters updating new WooCommerce blocks. * Fix - Fixed a setting of the standard product search form replacement ("Order by" would not take the –– option). * Fix - Fixed the height setting of the standard product search form replacement was not stored. * Fix - Fixed the category limit setting of the standard product search form replacement was not stored. * Fix - Fixed search weights settings where relevances could not be set to 0 unless that was their default value. 2019.04.17 - version 2.13.0 * Update - Updated for compatibility with WooCommerce 3.6. 2019.03.09 - version 2.12.3 * Dev - Improved hierarchical taxonomy product counts to take overall counts in subtrees into account. * Add - Added the ixProductFilterRequestProcessed jQuery event to signal the end of processing a filter request response. * Fix - Fixed an issue where terms that related to ineligible (e.g. protected) products were included as choices in taxonomy filters. 2019.02.25 - version 2.12.2 * Update - WordPress 5.1 compatibility tested. * Update - WooCommerce compatibility tested. * Fix - Fixes an issue introduced with WC 3.5.5 https://github.com/woocommerce/woocommerce/pull/22573/files where saving settings had no effect. 2019.01.11 - version 2.12.1 * Fix - Fixed an issue where a page containing blocks with filter shortcodes would show an error about failing to publish or update. * Fix - Fixed wrong price filter limits when searching first and then applying price filters (a side-effect of incorrect parameter handling). * Fix - Fixed an issue with the filter reset producing an invalid URL due to excessive escaping. * Update - Updated the price filter to use common price decimals and adjust the price range limits as floor and ceiling values. * Add - Added the woocommerce_product_search_filter_price_decimals filter that allows to modify the price filter decimals used. * Add - Added the woocommerce_product_search_service_min_max_price_adjust_decimals filter. * Add - Added the woocommerce_product_search_service_min_max_price_adjust_for_display_decimals filter. * Dev - Improved performance and fixed results by removing redundant meta query related to price filter when our price filter is requested. 2018.12.07 - version 2.12.0 * Update - Tested with the latest WooCommerce and WordPress, including the new WordPress 5 Blocks editor (Gutenberg). * Update - Revised and tested for compatibility with Gutenberg and other page builders. * Fix - Fixed initial values of the price filter were not set appropriately when used in content (with page builder blocks and shortcodes). * Dev - Improved price filtering so store prices without taxes and products displaying prices with taxes included are consistent. * Remove - Removed deprecated auto adjust settings. * Fix - Fixed missing lower bounds on price slider calculations resulting in NaN values. * Fix - Fixed an issue when optimizing back end searches is disabled, the specialized product store would provide all products instead of matches only. 2018.11.18 - version 2.11.0 * Update - WordPress 5 compatibility checked. * Dev - Improved the Product Search Field structure making it more resilient and easily fitting in with themes. * Fix - Fixed number of terms not being taken into account to limit product categories or product attributes. * Dev - Improved the Queries report to show the initial sorting-indicator. * Update - The Product Search Field will try to maintain the chosen order when the search page is requested (Enter/more link). * Add - Added an option to the Product Search Field to allow for open order. * Dev - Improved product tag counts: related product counts are adjusted based on the current filter context instead of showing the overall count. * Dev - Improved the performance on handling taxonomy term counts. * Fix - Fixed price slider handles not positioned according to mapping when values are updated via filter context. 2018.10.02 - version 2.10.0 * Add - Added Jetpack compatibility with lazy image loading so it does not need to be disabled anymore. * Add - Added the woocommerce_product_search_signal_filter_response action to signal filter response handling. * Update - Checked WooCommerce 3.5 compatibility. * Add - Added the woocommerce_product_search_compat filter. * Fix - Fixed issues with white space removal in accurate filter response optimization. * Dev - Improved compacting with accurate filter response optimization. * Update - Using only simple filter response optimization by default to assure higher compatibility rate. 2018.09.25 - version 2.9.0 * Update - New feature added - flexible dropdowns as style options for category and attribute filters. * Update - New feature added - create custom shop sections with preselected product categories, tags or attributes. * Update - New feature added - use context to create customized shop pages showing products from certain categories, tags, attributes etc. only. * Dev - Improved options and debugging info for theme compatibility. * Add - Added Storefront compatibility features so the handheld footer brings handles the search field and live results correctly. * Fix - Fixed an issue with incorrect parameters submitted to filter request when empty multiple select was used. * Add - Added the woocommerce_product_search_selectize_css filter. * Add - Added the woocommerce_product_search_term_node_select_padding_step filter. * Fix - Fixed term counts were not taking all subterms into account. * Add - Added the woocommerce_product_search_term_node_select_render_count filter. * Dev - Improved the logic when several instances of the same filter are present to use some single key factors from the triggering element only. * Fix - Fixed an issue where updating URL query args was not removing all previous parameter pairs. * Fix - Fixed loading (progress) indicator gone when launching multiple filter requests. * Add - Added taxonomy, term and taxonomy_op to the available attributes the woocommerce_product_filter_products shortcode and the corresponding API function. * Add - Added the [woocommerce_product_search_filter_context] shortcode. * Dev - Improved empty selects and dropdowns so they/their widgets are automatically toggled. * Add - Added individual options to toggle widgets and components when no eligible options are present in category, attribute and tag filters. * Add - Added a console warning when the general products container is not found. * Add - Added a console warning when the individual product containers are not found. * Add - Added the option to set the individual product container selector. * Dev - Improved search handling for languages like Chinese. * Fix - Fixed cases where queries on custom post types with a product taxonomy query part were filtered by mistake. 2018.08.24 - version 2.8.0 * Update - Substantial performance improvements related to queries with large sets of products and terms. * Fix - Fixed calculating product counts for terms with items that are out of stock. * Dev - Improved hierarchical product counts to include counts from children. * Dev - Improved performance on handling terms. * Fix - Fixed redundant queries related to hit recording. * Update - Modified slider limit indicators to adjust to available range in context. 2018.08.19 - version 2.7.0 * Update - Enhanced indexing to include product variations specifically. * Fix - Fixed variations not included when optimizing JSON searches. * Fix - Fixed missing index update for private products when saved. * Update - Minor improvements on back end descriptions. 2018.08.16 - version 2.6.0 * Update - Considerably improves the accuracy and performance of large product set searches on the back end when enabled. * Add - Added options to handle JSON product searches; introduced substantial performance improvements for those. * Add - Added the woocommerce_product_search_ext_product_data_store filter. * Update - Improvement to also index products with private post status so they can be included in back end search results. * Add - Added the WPS_EXT_PDS constant that enables the PDS override. 2018.07.30 - version 2.5.0 * Add - Added the Spanish translation. * Fix - Corrected some errors in descriptions. * Fix - Fixed an issue that made the [woocommerce_product_filter_reset] shortcode inaccessible. * Fix - Fixed translations were not loaded in time for widgets on the back end. * Fix - Fixed incorrect img attributes generated for product tag filter thumbnails. 2018.07.24 - version 2.4.0 * Add - Added an interactive price slider to the price filter (supported by widget, shortcode and API function). * Add - Added options to display the price filter with slider and/or input fields. * Fix - Fixed and improved overlapping request handling for live search and filter actions. * Add - Added filter reset widget, shortcode and API functions. * Update - Improved UX using page cursor progress indicator while filter requests are loading. * Update - Improved handling of filter requests in case of request error to bring the UI elements back to a consistent state. * Fix - Fixed indicating the parent term for the product category filter had no effect. * Fix - Fixed the indexer's memory limit check when the configuration option is set to unlimited or doesn't exist. * Update - Improved initial default work cycle so it won't exceed the idle cycle by default and also checks max_input_time. * Add - Added check for max_input_time during indexing. * Add - Added the woocommerce_product_search_indexer_limit filter. * Add - Added the woocommerce_product_search_indexer_check_memory_limit filter. * Add - Added the woocommerce_product_search_indexer_check_execution_limit filter. * Update - Suppressed warnings from empty indexing requests (e.g. when a product has no related tags). * Fix - Fixed back end search to include out of stock products and those that are in draft or pending. * Fix - Fixed an issue when "Enable AJAX add to cart buttons on archives" was disabled, clicking the button from within live results would lead to a blank page showing 0. * Add - Added the option to render the product category filters as select/dropdown. * Add - Added the option to render the product attribute filters as select/dropdown. * Add - Added the woocommerce_product_search_term_node_select_apply_padding filter. * Add - Added the woocommerce_product_search_term_node_select_padding_string filter. * Add - Added the woocommerce_product_search_term_node_select_padding filter. 2018.06.12 - version 2.3.0 * Fix - Fixed search results were not obtained for words containing some graphemes (like e.g. "æ") that expand to multiple characters in the index. * Add - Added additional information on context in the log when the content to clean is not a string. * Dev - Improved the indexer to include potential additional content rendered through shortcodes in the descriptions. * Fix - Fixed shortcodes appearing in descriptions produced for live search field results. * Add - Added cron check in the indexing section. * Add - Added the possibility to run indexing manually through the "Run" button. * Fix - Fixed context resolution for terms should be limited to concerned product taxonomies only. 2018.05.28 - version 2.2.3 * Add - Added parameters to the live search field form to handle more restrictive requests. * Fix - Fixed and updated the more link generated for the live search field to allot to enable or disable any parameters. * Add - Added the condition to also act when searching along with filter search when processing the query, avoids showing all results when none should be included for search outside of filtering. * Fix - Fixed the live search filter form so it also includes the title, excerpt, content and sku flags to allow for more restrictive search. * Update - Improved acting on missing resources to reenable filter fields to have at least minimal functionality. * Add - Added missing filter flags on ordering form update. * Fix - Fixed sorting with multiple filter attributes would only use one attribute. * Fix - Fixed a syntax error in variable initialization of the ixwpsf.attributeFilterItemOnClick function. * Fix - Fixed cleaning up ampersands in product filter URL handling. 2018.05.18 - version 2.2.2 * Fix - Fixed product category order by Term order had no effect. * Fix - Fixed product attribute order by Term order had no effect. * Update - Improved term product counts to reflect current filtering context. * Add - Added the woocommerce_product_search_get_terms_filter_counts filter. * Add - Added the woocommerce_product_search_term_walker_apply_get_term_count filter. 2018.05.14 - version 2.2.1 * Fixed product category filter expansion not always behaving properly on touch enabled devices. * Fixed cycling between expanded and retracting on hover in the product category filter in certain conditions. 2018.05.11 - version 2.2.0 * Update - This release contains very important performance improvements thanks to the use of a more optimal query structure. * Fix - Solved issues where long queries would result in stalling the database engine due to the query optimizer producing suboptimal results. * Add - Added the missing parameter to the woocommerce_product_filter_products() API function. * Fix - Fixed duplicate filter name, added the woocommerce_product_search_field_more_anchor_title filter. * Fix - Fixed a typo in the class reference for the MIN_DELAY constant in the search field, filter field and old shortcode. * Fix - Fixed missing and incomplete code documentation. * Fix - Fixed the product filter when it would not be applied without also filtering terms. * Fix - Fixed the product filters affecting other parts outside of the extension as this might not be desired by default in all setups. * Add - Added an option to apply product filters more extensively (disabled by default). 2018.05.08 - version 2.1.2 * Update - Improved adaptive category filtering to reduce the terms offered when taxonomy pages are requested directly. * Fix - Fixed the filter removal invocation for the terms_clauses filter. * Fix - Fixed an issue where menu items would not be shown when accessing a filter-based URL. * Fix - Fixed a PHP Notice when no results are matching for filters but no search terms were provided. * Fix - Fixed price range filter was not activated due to missing flag in the filter request URL when a category was chosen after setting the price range. * Add - Added the woocommerce_product_search_request_search_query filter. * Dev - Extended the term count adjustments to product attributes. * Dev - Renamed the get_terms_for_request() method to the more appropriate get_product_categories_for_request() (in the service class). 2018.04.26 - version 2.1.1 * Add - Added the Woo header tag. 2018.04.18 - version 2.1.0 * Update - Improved the product filter navigation and UX. * Update - Improved term handling internally. * Add - Added product category navigation facilities compatible with click and touch devices, including auto-expand and retract and click to expand/retract. * Add - Added visual improvements on all product filters. * Add - Added Font Awesome 5 Free for term navigation icons. * Update - Disabled product category filter parent navigation display by default in favor of ancestor navigation which is enabled by default (both can be combined). * Add - Added guards for cases where conflicts are created by poor "optimizers" or where plain Javascript errors are causing required resources (our typeWatch) not to be loaded. * Add - Added the woocommerce_product_search_term_walker_expand filter. * Add - Added the woocommerce_product_search_term_walker_retract filter. * Update - Improved the term filter algorithm to further restrict terms offered based on matching products from the keyword search filter. * Remove - Removed the previous taxonomy renderer. * Fix - Fixed an issue where applying filters with pagination would lead to 404 responses if the filter would produce less pages than the n-th page viewed. * Fix - Fixed wrong form id produced for price filter form. * Add - Added the WPS_DEBUG_DOM constant which enables logging of DOM parsing errors. 2018.04.01 - version 2.0.4 * Update - Improved handling multiple instances of category filters; restricted terms offered to eligible terms within include and chosen context. * Update - Improved handling multiple instances of attribute filters as with category filters. * Update - Improved container IDs of live filters and live search. * Add - Added internal guards for string values on filter parameters. * Fix - Fixes an issue where filters would be rendered multiple times in particular circumstances. * Add - Added the woocommerce_product_search_like_within filter. * Fix - Fixed cross-filtering introducing unwanted terms on restricted filter terms with include. * Update - Updated the minimum WordPress version requirement to 4.6. * Add - Added the taxonomy renderer. * Update - Improved the adaptive term filter to take explicit inclusions into account. 2018.03.26 - version 2.0.3 * Fix - Fixed an issue where an optimization flag was propagated to pagination URLs causing scripts and styles to be removed. * Fix - Fixed selected depth not correctly displayed on Product Filter – Categories widget. * Update - Improved the categories product filter to be adaptive on product category pages. 2018.03.09 - version 2.0.2 * Update - Guarded the indexing process from failing due to invalid taxonomies. * Fix - Fixed an issue with no results displayed in the product search field when no categories are shown. * Fix - Fixed an issue with category thumbnail and product filter images clashing. 2018.03.08 - version 2.0.1 * Fix - Fixed a fatal error with installations using WordPress before 4.9.0 due to a missing core API function. 2018.03.05 - version 2.0.0 * Update - This major release requires WooCommerce 3.x to use new features while maintaining backwards-compatibility with WooCommerce 2.6 where these are not available. * Update - All new improvements and features listed below for this version __require__ WooCommerce 3.x. * Add - Added full support to use the search engine for all front and back end product searches. * Update - Automatically powers front and back end searches for products and added related options. * Update - Automatically replaces front end product search field where possible. * Add - Added the product indexer. * Add - Added search statistics. * Add - Added the report on Searches. * Add - Added the report on Search Queries. * Add - Added the Welcome section with useful information and links. * Add - Added the notice inviting to rate the extension. * Add - Added the Assistant to set up filter widgets. * Add - Added the Index section in settings. * Update - Updated the Thumbnails section in settings with additional thumbnail settings for product taxonomies. * Update - Updated the Weights section with additional settings. * Update - Removed the performance section in settings. * Add - Added live product filter facilities available through widgets, shortcodes and the extension's API. * Add - Added the Product Filter widget. * Add - Added the Product Category Filter widget. * Add - Added the Product Tag Filter widget. * Add - Added the Product Attribute Filter widget. * Add - Added the Price Filter widget. * Add - Added the [woocommerce_product_filter] shortcode. * Add - Added the [woocommerce_product_filter_products] shortcode. * Add - Added the [woocommerce_product_filter_attribute] shortcode. * Add - Added the [woocommerce_product_filter_category] shortcode. * Add - Added the [woocommerce_product_filter_tag] shortcode. * Add - Added the [woocommerce_product_filter_price] shortcode. * Add - Added product search filter image support for product categories, tags and attributes. * Add - Added new options to shorten titles and description for results in the search field. * Add - Added data deletion option. * Update - Replaced the "WooCommerce Instant Product Search" widget with the improved "Product Search Field" widget that offers additional options and much better default settings. * Update - Replaced use of language domain constant WOO_PS_PLUGIN_DOMAIN with string literal 'woocommerce-product-search' (*sigh*). * Remove - Removed support for like_escape(). * Add - Added WooCommerce version compatibility and tested up to tags. * Remove - Removed the woocommerce_product_search_use_admin_ajax filter and product-search.php alternative. * Update - Optimized scripts. * Add - Added performance improvements with added minified scripts and styles. * Update - Updated the translation template. * Update - Updated the built-in styles for better appearance and theme-compatibility. * Update - Several minor fixes and improvements. 2017.09.09 - version 1.10.3 * Update - Updated the product panel icon. 2017.07.25 - version 1.10.2 * Fix - Fixed our taxonomy query to exclude products that are out of stock and products excluded from search. 2017.06.23 - version 1.10.1 * Update - Adjusted the fulltext search to exclude query words that are shorter than ft_min_word_len. * Fix - Fixed an error that could occur in some instance (depending on the MySQL version used) related to information table permissions when trying to obtain the value of ft_min_word_len. 2017.05.28 - version 1.10.0 * Fix - Fixed warning due to use of deprecated action woocommerce_product_write_panels, now using woocommerce_product_data_panels. * Fix - Fixed warnings where parameter is expected to be a reference but a value is given (related to PHP 7). * Fix - Fixed error "The 'INFORMATION_SCHEMA.GLOBAL_VARIABLES' feature is disabled ..." on MySQL 5.7 2017.04.12 - version 1.9.0 * Update - Updated the plugin for WooCommerce 3.0.0 compatibility. 2017.01.19 - version 1.8.1 * Fix - Fixed a PHP Fatal error for PHP < 5.5.0 "Can't use method return value in write context ..." 2017.01.11 - version 1.8.0 * Update - Now using admin-ajax.php by default instead of the internal script. * Fix - Fixed an issue where for no matches all results were returned instead. * Add - Added an additional internal method to enable or disable WPML language filtering. * Update - Searching in SKU is now also taken into account in search results page. 2016.11.24 - version 1.7.1 * Fix - Fixed search terms were not displayed on the search results page. 2016.10.21 - version 1.7.0 * Add - Added support for search in SKU. * Dev - Reduced the memory imprint of the visibility and out of stock checks. * Fix - Fixed issues with sorting results. * Update - Improved the search results presented to match those of the instant search box. * Fix - Fixed an additional issue related to empty search terms using fulltext search when weights are enabled (again related to https://bugs.mysql.com/bug.php?id=78485) * Fix - Fixed issues with catalog and search visibility. 2016.07.25 - version 1.6.0 * Fix - Fixed WPML language filtering. * Fix - Fixed an issue where search terms that resulted as empty after cleaning them up would cause a database query error in fulltext search with InnoDB tables due to a bug in MySQL https://bugs.mysql.com/bug.php?id=78485 2016.06.24 - version 1.5.0 * Update - Adjusted the term query to use the new termmeta table (WP DB >= 34370 and WC >= 2.6.0). 2016.05.15 - version 1.4.3 * Update - Filtering products which are not visible. 2015.12.07 - version 1.4.2 * Update - Adjusts the product search submenu margin and enqueues admin styles for all our sections. 2015.08.12 - version 1.4.1 * Update - Declares table-layout auto for search results table for visual compatibility with themes like Twenty Fifteen that declare it fixed. 2015.05.14 - version 1.4.0 * Update - Performance options added with support for Full-Text Searches. * Update - Improved search term filters to exclude non-alphanumeric characters to avoid queries that could potentially lead to query errors. * Add - Added an option to log main query times. 2015.05.04 - version 1.3.1 * Update - Improved internal definitions to maintain functionality with alternate WP_CONTENT_DIR and WP_CONTENT_URL definitions. 2015.03.12 - version 1.3.0 * Update - Hiding out of stock products when "Out Of Stock Visibility" is enabled. * Update - Search results after focus-out-focus-in are emptied if search field is empty. * Add - Added the option to show prices for both shortcode and widget, using the attribute show_price (disabled by default). 2014.09.13 - version 1.2.0 * Update - Admin menu restructured and plugin faq/help moved to Help tab. * Fix - Fixed a memory issue with huge result sets. * Add - Added search weights for products and product categories. * Add - Added general search weights for product title, excerpt, content and tags. 2014.08.26 - version 1.1.0 * Fix - Fixed a code issue (improper static method call). * Add - Added OB handling to assure clean AJAX response for search results. * Update - Improved results to be fully clickable. * Add - Added use of a placeholder thumbnail image (option, enabled by default). * Add - Added show_description (disabled by default) based on a product's short description. * Update - Improved search result rendering. * Update - Improved search facility rendering. * Add - Added API function woocommerce_product_search(). * Update - Adjusted for changes in WordPress 4.0 (like_escape is deprecated). * Add - Added the Product Search Thumbnail image size info to the Products section. * Add - Added a CSS rule for product search result titles to use the inherited font, to avoid conflicts with generic rules for the .title class in themes. By inheriting the font from its parent element, the default is more in line with its context. * Add - Added a CSS rule for product search result entries to apply a minimal padding to avoid conflicts with generic rules for the .entry class in themes. * Fix - Fixed missing resources when widget is used. * Update - Moved plugin settings inside WooCommerce settings into its own Product Search tab. * Add - Added a link to the settings shown in the plugin's entry. * Add - Added a brief help section. * Add - Added WPML choice for widget. * Add - Added WPML language indication support * Add - Added woo-includes. 2014.07.28 - version 1.0.2 * Add - Added readme.txt * Update - Improved search query service, now also using object cache to get category results. * Add - Added blinker timeout. * Update - Improved results visualization so that empty results have no border. * Add - Added a filter which allows to use admin-ajax instead of our core handler. 2014.07.13 - version 1.0.1 * Fix - Fixed a Javascript error when data returned is null. * Update - Changed the tags logic to conjunctive within multiple search term context. * Update - Adjusts search queries only where explicitly request through the ixwps parameter (on the posts_where filter). * Update - Using object cache to get post id results. 2014.06.26 - version 1.0.0 * Dev - Initial release