如何显示自定义分类父母和子女,包括帖子

时间:2014-02-27 03:04:34

标签: wordpress categories custom-post-type taxonomy children

我目前正在开发一个Wordpress项目,该项目必须显示自定义帖子类型&的这些子类别中的所有类别,子类别和帖子。分类。 我应该成为这样的事情:

  • 第1类
    • 子类
      • post 1
      • post 2
    • 子类
      • post 3
  • 第2类
    • 子类
      • post 4

此时代码返回所有类别和子类别的列表 在h3标签之间的分类中。这里只显示父类别。

    <?php
    $terms = get_terms('resource_category', array('hierarchical' => false));
    foreach ($terms as $term) {

     $cat_slug = $term->slug;
     $cat_id = $term->term_id;
     $subcats = get_categories('child_of='.$cat_id.'&taxonomy=resource_category');
     if ( have_posts() ) :

     /* CATEGORY */ ?>
     <div class="resources">
     <?php echo '<h3>'.$term->name.'</h3>';

       /* SUBCATEGORY */
       foreach ($subcats as $subcat) {
       if ( have_posts() ) :
       echo '<h4>' . $subcat->name .'</h4>';
       query_posts('post_type=resources&resource_category='.$subcat->cat_name.'&hide_empty=1'); ?>
       <?php while ( have_posts() ) : the_post(); 

       /* SUBCATEGORY POSTS */?>
       <div class="resource-item">
       <ul>
         <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
       </ul>
       </div>
       <?php endwhile; endif; wp_reset_query();} ?>
       </div>

     <?php endif; wp_reset_query(); } ?>

非常感谢有人可以帮助我!

1 个答案:

答案 0 :(得分:1)

$terms = get_terms('mobile_category', array('hide_empty'=> 0,'orderby'=> 'count','parent' => 0)); foreach ($terms as $term) {

 $cat_slug = $term->slug;
 $cat_id = $term->term_id;
 $subcats = get_categories('child_of='.$cat_id.'&taxonomy=mobile_category');

// if ( have_posts() ) :

 /* CATEGORY */ ?>
 <div class="resources">
 <?php echo '<h3>cat pr1 --  '.$term->name.'</h3>';

   /* SUBCATEGORY */
   foreach ($subcats as $subcat) {
   if ( have_posts() ) :
   echo '<h4>sub 2 ' . $subcat->name .'</h4>';
   query_posts('post_type=mobile&mobile_category='.$subcat->cat_name.'&hide_empty=1'); ?>
   <?php while ( have_posts() ) : the_post();    

   /* SUBCATEGORY POSTS */?>
   <div class="resource-item">
   <ul>
     <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
   </ul>
   </div>
   <?php endwhile; 

endif; wp_reset_query();}