Commit cb9cc861423 for woocommerce
commit cb9cc861423cffcf0354da2aee77427f6d4b8906
Author: Vladimir Reznichenko <kalessil@gmail.com>
Date: Mon Oct 26 07:56:27 2026 +0100
[Performance] Optimize fetching product IDs in product filters (#70121)
Removes sorting (as consumers don't require the ordering) in product IDs fetch SQL from \Automattic\WooCommerce\Internal\ProductFilters\FilterData::get_cached_product_ids in order to speed up the SQL for newer supported MySQL versions (7% faster on 500K bench-dataset; no changes for MariaDB).
diff --git a/plugins/woocommerce/changelog/performance-filter-data-ids-fetch b/plugins/woocommerce/changelog/performance-filter-data-ids-fetch
new file mode 100644
index 00000000000..edc0a74297b
--- /dev/null
+++ b/plugins/woocommerce/changelog/performance-filter-data-ids-fetch
@@ -0,0 +1,4 @@
+Significance: patch
+Type: performance
+
+Optimized fetching product IDs in product filters.
diff --git a/plugins/woocommerce/src/Internal/ProductFilters/FilterData.php b/plugins/woocommerce/src/Internal/ProductFilters/FilterData.php
index b612dfd2c69..ab83992b1f8 100644
--- a/plugins/woocommerce/src/Internal/ProductFilters/FilterData.php
+++ b/plugins/woocommerce/src/Internal/ProductFilters/FilterData.php
@@ -707,6 +707,7 @@ class FilterData {
$query_vars['no_found_rows'] = true;
$query_vars['posts_per_page'] = -1;
$query_vars['fields'] = 'ids';
+ $query_vars['orderby'] = 'none';
$query = new \WP_Query();
$query->query( $query_vars );