Как исключить товары из определенной категории на странице магазина

Задача: Исключить всю категорию товаров со страницы магазина.

Обратите внимание, что это будет работать только в том случае, если для настройки «На странице магазина» установлено значение «Показывать товары» в настройках через кастомайзер или главное меню «WooCommerce> Каталог продуктов«.

Окно кастомайзера
Окно кастомайзера
Выбор категории

Вам нужно добавить этот код в файл functions.php вашей дочерней темы или через плагин, который позволяет добавлять пользовательские функции, такие как плагин Code snippets . Не добавляйте пользовательский код непосредственно в файл functions.php родительской темы, так как он будет полностью удален при обновлении темы.

/**
 * Исключаем товары определенной категории со страницы магазина
 */
function cisp_pre_get_posts_query( $q ) {

    $tax_query = (array) $q->get( 'tax_query' );

    $tax_query[] = array(
           'taxonomy' => 'product_cat',
           'field' => 'slug',
           'terms' => array( 'tshirts' ), // товары указанной категории не появятся на странице магазина.
           'operator' => 'NOT IN'
    );


    $q->set( 'tax_query', $tax_query );

}
add_action( 'woocommerce_product_query', 'cisp_pre_get_posts_query' ); 

Оставьте комментарий

Добавить комментарий

%d такие блоггеры, как: