自定义分类职位名称未检索

时间:2019-03-21 17:31:49

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

自早上以来,我一直在研究一个问题,但没有找到确切的答案。我必须显示主要类别名称,然后显示其子类别名称,然后再显示附加到该子类别的帖子。但是我的循环运行不正确。我想要这样。

  • 勉类1 。儿童1   。发布1   。发布2   。发布3 。 10岁儿童   。帖子11   。第21章   。发布31
  • 主要类别2 。儿童4   。发布5   。第6篇   。发布7

我的功能是这个

     function carMegaMenu()
     {
     $result ='<div class="side-menu">';
     $result .='<ul>';

     $taxonomies = get_terms(array('taxonomy' => 'product_categories','parent' => 0 , 'hide_empty' => false,));
     foreach ($taxonomies  as $taxonomy) {
         $cat_name= $taxonomy->name;
         $result .='<li><h3 class="cat-m">'.$cat_name.'</h3>';
         // first child taxonom
         $result .='<ul>';
         $taxonomies_child = get_terms(array('taxonomy' => 'product_categories','parent' => $taxonomy->term_id , 'hide_empty' => false,));
         foreach ($taxonomies_child  as $taxonomy_child) {
             $child_cat_name = $taxonomy_child->name;
             $slug = $taxonomy_child->slug;
             $result .='<li>';
             $result .='<h3 class="cat-m">'.$child_cat_name.'</h3>';
         // posts in taxonomy
         $result .='<ul>';
        $tax_post_args = array(
          'post_type' => 'products', // your post type
          'posts_per_page' => 999,
          'orderby' => 'id',
          'order' => 'ASC',
          'tax_query' => array(
              array(
                  'taxonomy' => 'product_categories', // your taxonomy
                  'field' => 'slug',
                  'terms' => $slug
              )
          )
      );    
         $tax_post_qry = new WP_Query( $tax_post_args );
         if($tax_post_qry->have_posts()) {   
         while ( $tax_post_qry->have_posts()) {

                          $result .='<li><a href="'. get_permalink().'">'.the_title().'</a></li>';

                     }            

    }

         $result .='</ul>';
         $result .='</li>';


         $result .='</ul>';
         $result .='</li>';
     }

     $result .='</ul>';
     $result .='</div>';

 }
 if ($result) {
         return $result;
     } else {
         return "";
     }

}

问题在此循环中

while ( $tax_post_qry->have_posts()) {

                          $result .='<li><a href="'. get_permalink().'">'.the_title().'</a></li>';

                     }  

1 个答案:

答案 0 :(得分:0)

请使用以下代码,让我知道是否可行

while ( $tax_post_qry->have_posts() ) {
    $tax_post_qry->the_post();
    echo '<li><a href="'. get_permalink().'">' . get_the_title() . '</a></li>';
}