Перенаправить пользовательскую страницу, если счетчик продуктов равен нулю в категории Woocommerce - PullRequest
1 голос
/ 23 января 2020

Мне нужно перенаправить пользовательскую страницу, если счетчик продуктов равен нулю в категории Woocommerce. Пожалуйста, помогите мне

Ответы [ 2 ]

1 голос
/ 23 января 2020

Предполагается, что вы получаете доступ к категориям продуктов через одну из страниц терминов таксономии:

Добавьте это в файл functions.php. Обязательно замените SOME_PATH . '/some-custom-file.php'; на путь к шаблону, который вы хотите загрузить.

add_filter( 'template_include', 'redirect_on_empty_product_category' );

function redirect_on_empty_product_category( $template ){

  if ( ( $taxonomy_id = get_query_var( 'taxonomy' ) ) && ( $term_id = get_query_var( 'term' ) ) && is_tax( $taxonomy_id, $term_id ) ){

    $term = get_term_by( 'slug', $term_id, $taxonomy_id );

    if ( $term->count === 0 ){
      $page_url = get_permalink($some_post_id);
      echo sprintf('<script type="text/javascript"> window.location = "%s" </script>', $page_url);
    }
  }

  return $template;
}
1 голос
/ 23 января 2020

Вам просто нужно добавить $ cat-> count, чтобы получить количество всех товаров в этой категории. Надеюсь, это поможет вам.

$args = array(
    'number'     => $number,
    'orderby'    => $orderby,
    'order'      => $order,
    'hide_empty' => $hide_empty,
    'include'    => $ids
);

$product_categories = get_terms( 'product_cat', $args );

foreach( $product_categories as $cat )  { 
   echo $cat->name.' ('.$cat->count.')'; 
}

Спасибо

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