Есть ли способ исключить товары из раздела сопутствующих товаров, у которых есть атрибут с определенным значением.Например, я хочу получить связанные товары по категориям, за исключением товаров с атрибутом attribute_value('pa_season') = summer;
Я пробовал это, но это не работает
add_filter( 'woocommerce_related_products_args', 'filter_related_products' );
function filter_related_products( $args ) {
global $product;
return array(
'post_type' => 'product',
'ignore_sticky_posts' => 1,
'no_found_rows' => 1,
'posts_per_page' => 4,
'orderby' => 'ASC',
'post__not_in' => array( $product->get_id() ),
'tax_query' => array(
array(
'taxonomy' => 'pa_epoxi',
'field' => 'slug',
'terms' => 'autumn-winter'
)
)
);
}
РЕДАКТИРОВАТЬ: я обнаружил, что могу использоватьфильтр woocommerce_product_related_posts_query для редактирования запроса, который выбирает связанные продукты из базы данных.
Я попробовал следующий код:
add_filter( 'woocommerce_product_related_posts_query', function( $query ) {
$query['where'] .= " AND t.term_id !=100";
return $query;
});
Но я получаю сообщение об ошибке: Неизвестный столбец 't.term_id' в 'выражении where'