最新公告
  • 欢迎您光临源码库,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入
  • WordPress获取指定/当前分类目录的文章数量

    获取指定或当前分类目录的文章数量总数这个功能,在开发 WordPress主题中经常会用到。

    这个常用的功能也是非常容易实现的,下面分享几种实现方法

    首获取当前文章数量

    <?php
        global $wp_query;
        $cat_ID = get_query_var(\'cat\');
        $category = get_category($cat_ID);
        echo $category->count;
    ?>
    

    使用方法

    在需要获取当前文章数量的页面使用上面代码

    //以上代码中,最后的count,也可以换成slug,就是输出分类别名。
    echo $category->slug;
    
    解析:
    get_cat_ID()    根据分类名称获取分类ID
    get_cat_name()    根据分类ID获取分类名称
    get_category_link()    根据分类ID获取分类的链接URL
    

    获取某个分类的文章数量

    1、使用 WordPress的内置函数 get_posts()

    <?php
    $posts = get_posts( \'numberposts=-1&category=3\' );
    echo count($posts);
    ?>
    

    2、使用WordPress的内置函数 get_category_by_slug()

    <?php
    // 将下面\'category-name\'改成你的分类别名即可
    echo get_category_by_slug(\'category-name\')->count;
    ?>
    

    3、 使用 WordPress的内置函数 get_category()

    <?php
    // 将以下\'cat_ID\'改成你的分类ID即可
    echo get_category(cat_ID)->count;
    ?>
    

    4、 使用 wpdb 直接查询数据库

    function wt_get_category_count($input = \'\') {
        global $wpdb;
        if($input == \'\') {
            $category = get_the_category();
            return $category[0]->category_count;
        }
        elseif(is_numeric($input)) {
            $SQL = \"SELECT $wpdb->term_taxonomy.count FROM $wpdb->terms, $wpdb->term_taxonomy WHERE $wpdb->terms.term_id=$wpdb->term_taxonomy.term_id AND $wpdb->term_taxonomy.term_id=$input\";
            return $wpdb->get_var($SQL);
        }
        else {
            $SQL = \"SELECT $wpdb->term_taxonomy.count FROM $wpdb->terms, $wpdb->term_taxonomy WHERE $wpdb->terms.term_id=$wpdb->term_taxonomy.term_id AND $wpdb->terms.slug=\'$input\'\";
            return $wpdb->get_var($SQL);
        }
    }
    

    第4种方法的使用方法: 将上面代码添加在主题目录下的functions.php中, 然后在需要的地方调用下面三种函数:

    // 1.在主循环中调出该函数,不提供参数,返回第一个分类的文章数
    
    <?php echo wt_get_category_count(); ?>
    
    // 2.提供数字参数,该数字为分类的 ID 号,则返回对应 ID 的分类的文章数:
    // \'1\'为你的分类ID
    
    <?php echo wt_get_category_count(1); ?>
    
    // 3.提供分类别名做为参数,返回对应别名的分类文章数:
    // \'hello-world\'为你的分类别名
    
    <?php echo wt_get_category_count(\'hello-world\'); ?>
    

    总结

    个人建议使用WordPress内置函数get_category()获取某个分类的文章数量,也就是第3种方案。

    1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
    2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
    3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
    4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
    5. 如有链接无法下载、失效或广告,请联系管理员处理!
    6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!

    源码资源库 » WordPress获取指定/当前分类目录的文章数量