WordPress 6.0
WooCommerce 6.4.1.
Проектируя самостоятельно фильтры товаров для WooCommerce, я не нашёл на просторах интернета ответ на вопрос, как получить полный список атрибутов товаров в выбранной категории.
Пришлось поковырять структуры данных в базе и написать запрос, выдающий таксономии (имена атрибутов) и значения термов (значения атрибутов), для товаров из категории с идентификатором CAT_ID:
SELECT atT.taxonomy, atT.term_id
FROM wp_term_relationships tr1
LEFT JOIN wp_wc_product_attributes_lookup atT
ON atT.product_or_parent_id = tr1.object_id
WHERE tr1.term_taxonomy_id = CAT_ID AND atT.taxonomy IS NOT NULL
GROUP BY atT.term_id
Ну а далее пишем функцию для формирования запроса и обработки результата.