Вывод списка рубрик

Необходимо в шаблоне tags.php вывести все рубрики (до второго уровня вложенности), содержащие посты, которые содержат текущий тег (тот, по клику на который мы попадаем на шаблон tags.php). Спасибо.

1 Kомментарий

  1. решение в лоб:

    global $wp_query;
    
    $r = new WP_Query(array_merge(array('posts_per_page'=>-1), $wp_query->query));
    if ($r->have_posts()):
    $cats = array();
    
    while ($r->have_posts()): $r->the_post();
    $cats = array_merge($cats, get_the_category());
    endwhile;
    if (!empty($cats)) {
      $cat_str = '';
      foreach ($cats as $category) {
        $cat_str .= $category->cat_ID . ',';
      }
      $cat_str = substr($cat_id, 0, -1);
    
      echo '';
      wp_list_categories('title_li=&depth=2&orderby=name&include='.$cat_str);
      echo '';
    }
    
    endif;
    wp_reset_postdata();
    

    пропишите это в файле tag.php вашей темы

    при большом кол-ве постов будет выполняться медленно
    и тогда лучше сделать через несколько запросов, нежели через стандартные ф-ции ВП

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

Ваш электронный адрес не будет опубликован.


*