2016-11-07 65 views
-1

我有3个类别(商品A,商品B,C项)如何为WordPress创建e嵌套类别页面?

每个categoies有不同的子类别

我想,当我去项目A类页只显示项目的子类别一个 和然后当我去这个子类别显示此职位

我该怎么做?

+1

欢迎来到SO。请看[旅游](http://stackoverflow.com/tour)。您可能还想检查[我可以询问哪些主题](http://stackoverflow.com/help/on-topic)以​​及[如何提出一个好问题](http://stackoverflow.com/help/)如何提问)和[完美问题](http://codeblog.jonskeet.uk/2010/08/29/writing-the-perfect-question/),以及如何创建[最小,完整和可验证示例](http://stackoverflow.com/help/mcve)。发布您尝试过的代码以及收到的错误。尽可能具体,因为它会导致更好的答案。 –

回答

0

使用wp_list_categories()与步行者向每个项目添加额外的无序列表。

$cat_id = get_query_var('cat'); 
$subcats = get_categories('child_of=' . $cat_id); // child categories 

class Cat_Walker extends Walker_Category { 
    function end_el(&$output, $page, $depth = 0, $args = array()) { 
     $posts = get_posts('cat=' . $page->term_id); 

     if (sizeof($posts) > 0) { 
      $output .= '<ul>'; 

      foreach ($posts as $post) { 
       $output .= sprintf('<li><a href="%1$s">%2$s</a></li>', get_permalink($post->ID), $post->post_title); 
      } 

      $output .= '</ul>'; 
     } 

     $output .= '</li>'; 
    } 
} 

foreach ($subcats as $subcat) { 
    $subsubcats = get_categories('child_of=' . $subcat->term_id); // sub child categories 

    foreach ($subsubcats as $subsubcat) { 
     $args = array(
      'title_li'   => '', 
      'show_option_none' => '', 
      'taxonomy'   => 'category', 
      'child_of'   => $subsubcat->term_id, 
      'walker'   => new Cat_Walker() 
     ); 

     wp_list_categories($args); 
    } 
}