Исключить категорию продукта из продуктов, связанных с Woocommerce - PullRequest
0 голосов
/ 04 марта 2019

В woocommerce я пытаюсь удалить определенную категорию продуктов из отображаемых связанных продуктов на страницах одного продукта.

Я пытался использовать функцию, зацепленную в woocommerce_get_related_product_cat_terms, фильтр-зацепку, как в некоторые темы ответов , но, похоже, больше не работает.

Как исключить конкретную категорию продуктов из продуктов, связанных с Woocommerce?

1 Ответ

0 голосов
/ 04 марта 2019

Попробуйте woocommerce_related_products подключить следующую подключенную функцию, чтобы исключить определенную категорию продуктов из отображаемых связанных продуктов:

add_filter( 'woocommerce_related_products', 'exclude_product_category_from_related_products', 10, 3 );
function exclude_product_category_from_related_products( $related_posts, $product_id, $args  ){
    // HERE define your product category slug
    $term_slug = 'hoodies';

    // Get the product Ids in the defined product category
    $exclude_ids = wc_get_products( array(
        'status'    => 'publish',
        'limit'     => -1,
        'category'  => array($term_slug),
        'return'    => 'ids',
    ) );

    return array_diff( $related_posts, $exclude_ids );
}

Код помещается в файл function.php активной дочерней темы (или активной темы)).

Протестировано и работает.

Связанный поток ответов: Исключить идентификаторы связанных продуктов в Woocommerce

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...