无名商城论坛

搜索
查看: 339|回复: 0

[其他技术] 【WD团队】获取指定/当前分类目录的文章数量

[复制链接]

1万

主题

1万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
32464
发表于 2022-5-8 15:15:23 | 显示全部楼层 |阅读模式
获取指定或当前分类目录的文章数量总数这个功能,在开发 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()    根据分类名称获取分类IDget_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种方案。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表