是否显示每个自定义分类术语的已发布帖子数?

时间:2014-06-05 作者:Traveler

我有一个自定义的分类法,叫做“国家”。如何将每个术语(国家)及其发布的帖子数量放在括号内,如下所示:

乌拉圭(3)智利(5)泰国(2)

  • 等带有以下代码的“国家”分类中所有术语的编号显示:

    $countries_count = wp_count_terms( \'countries\' );
    echo $countries_count; 
    
    但我只知道这只是我问题的一个起点。有什么建议吗?

  • 3 个回复
    最合适的回答,由SO网友:Pieter Goosen 整理而成

    您可以使用get_terms 获取与分类法关联的所有术语的列表。一旦有了所有单独的术语,就可以使用$term->name 显示术语名称,以及$term->count 检索特定术语内的帖子数量。

    这是法典中的代码的一个稍加修改的版本。您可以根据需要进一步修改输出

    <?php  
    $terms = get_terms(\'countries\');
    
     if ( !empty( $terms ) && !is_wp_error( $terms ) ){
         echo \'<ul>\';
         foreach ( $terms as $term ) {
           echo \'<li>\' . $term->name . \'&nbsp;(\' . $term->count . \')\' . \'</li>\';
         }
         echo \'</ul>\';
     } 
    ?> 
    

    EDIT

    感谢@Traveler,如果您需要可点击的链接,这里是我的代码的另一个版本。

    <?php 
    
      $terms = get_terms(\'countries\'); 
      if ( !empty( $terms ) && !is_wp_error( $terms ) ){ 
      echo \'<ul>\'; 
    
      foreach ( $terms as $term ) { 
         $term = sanitize_term( $term, \'countries\' ); 
         $term_link = get_term_link( $term, \'countries\' ); 
    
          echo \'<li><a href="\' . esc_url( $term_link ) . \'">\' . $term->name . \'&nbsp;(\' . $term->count . \')\' . \'</a></li>\'; 
      } 
      echo \'</ul>\';
      }
    
    ?> 
    

    SO网友:Alex Dumitru

    您可以使用WP Query进行尝试。我还没有测试它,所以请让我知道它是否有效。

    $query = new WP_Query( array( \'taxonomy\' => \'term\', \'posts_per_page\' => -1 ) );
    $count = $query->post_count;
    

    SO网友:leromt

    我现在无法测试这一点,但请尝试获取“国家”的所有术语,然后遍历它们并获取每个国家的wp\\u count\\u术语。

        $terms = get_terms("countries"); 
        if ( !empty( $terms ) && !is_wp_error( $terms ) ){
         echo "<ul>"; 
         foreach ( $terms as $term ) { 
         $args = array( \'slug\' => $term->slug, ); 
         echo "<li>" . $term->name . "(" . wp_count_terms(\'countries\', $args) . ")</li>";
        } 
        echo "</ul>"; }
    

    结束

    相关推荐

    分类自定义列-‘Manage_{Taxonomy}_Custom_Column’筛选器仅传递2个参数

    我正在尝试向标记上显示的表中添加自定义列(&a);Wordpress中的类别管理页面。我创建了一个函数,并使用add_filter( \'manage_post_tag_custom_column\' , \'my_custom_column\' , 10 , 2 ); 我的职能是my_custom_column( $out , $name , $term_id ){ switch( $name ){ case \'my_column_slug\' :