2014-02-05 31 views
0

首先,我试图显示来自称为“group”的分类标准的所有标签。但是,该分类标准目前包含两个标签,其中一个标签具有多个标签。如何显示来自分类标签的tagchildren的帖子

更新:我应该提到它是针对特定的帖子类型。

我想显示属于这些孩子的所有帖子。所以,最终的结果应该是这个样子:

  • 父标签的
    • 子标签
      • 后数据
    • 子标签
      • 后数据
    • et ç...
  • “父” 代码B

    <?php 
    $taxonomyName = "group"; 
    $terms = get_terms($taxonomyName,array('parent' => 0)); 
    foreach($terms as $term) { 
         echo '<a href="'.get_term_link($term->slug,$taxonomyName).'">'.$term->name.'</a>'; 
         $term_children = get_term_children($term->term_id,$taxonomyName); 
         echo '<ul>'; 
         foreach($term_children as $term_child_id) { 
           $term_child = get_term_by('id',$term_child_id,$taxonomyName); 
           echo '<li><a href="' . get_term_link($term_child->name, $taxonomyName) . '">' . $term_child->name . '</a></li>'; 
         } 
         echo '</ul>'; 
    } 
    ?> 
    
+0

是什么问题? 你想显示所有包含“子标签”或“父标签”的帖子? –

+0

@AkshayPaghdar我想显示属于特定子标签的帖子。那就对了。 – digifrog

+0

我已经做了一些研究,但我相信这很棘手,如果连这里的人都知道答案,我也会感到惊讶。 – digifrog

回答

1

可能是你应该试试这个...

我希望这将工作...

$taxonomyName = "group"; 
$terms = get_terms($taxonomyName,array('parent' => 0)); 
echo '<ul>'; 
foreach($terms as $term) 
{ 
    echo '<li><a href="'.get_term_link($term->slug,$taxonomyName).'">'.$term->name.'</a>'; 
    $term_children = get_term_children($term->term_id,$taxonomyName); 
    echo '<ul>'; 
    foreach($term_children as $term_child_id) 
    { 
     $term_child = get_term_by('id',$term_child_id,$taxonomyName); 
     echo '<li><a href="' . get_term_link($term_child->name, $taxonomyName) . '">' . $term_child->name . '</a>'; 
     echo '<ul>'; 
     $tax_arg = array(
      'post_type' => 'post', 
      'posts_per_page' => -1, 
      'post_status' => 'publish', 
      'tax_query' => array(
       array(
        'taxonomy' => $taxonomyName, 
        'field' => 'id', 
        'terms' => $term_child_id 
       ) 
      ) 
     ); 
     $posts = get_posts($tax_arg); 
     foreach($posts as $post) 
     { 
      echo '<li><a href="' . get_permalink($post->ID) . '">' . $post->post_title . '</a></li>'; 
     } 
     echo '</ul>'; 
     echo '</li>'; 
    } 
    echo '</ul>'; 
    echo '</li>'; 
} 
echo '</ul>'; 
+0

Akshay,你是一个天才。非常感谢您的帮助。 事实证明,我忘了提及它是一种自定义的帖子类型,而不是帖子。所以当我改变这个简单的论点时你的答案就起作用 再次感谢! – digifrog

相关问题