WordPress教程 获取分类文章数的方法
wordpress是没有显示分类文章数量统计的功能,和phpcms不一样,在phpcms中,每个分类下都有其当前分类文章的数量,让访客一眼就能知道这个栏目有多少篇文章,而在wordpress中是可以统计整站总计的文章数量,那么如果我们想要显示出来当前分类文章数呢,下面夏日博客就来分享一下相关的代码,其实也很简单,只需要把下面的代码放置到当前主题 functions.php 文件中即可。
实例代码如下:
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);
}
}
将统计文章的函数添加到 functions.php 文件中后,还需要在前台需要的地方进行代码的调用,以返回一个分类的文章数量,这里有三种调用的方法,如下所示.
1.1 在主循环中调出该函数,且不提供参数,则返回第一个分类的文章数:
<?php echo wt_get_category_count(); ?>
1.2 提供的参数为数字,且该数字为分类的ID号,则返回对应ID的分类的文章数:
<?php echo wt_get_category_count(1); ?>
1.3 提供分类的别名,则返回对应缩略名(别名)的分类文章数:
<?php echo wt_get_category_count(‘hello-world’); ?>
该函数对于含有子分类的分类,文章数统计上会有稍许误差。对于分类文章数为0的情况统计得也不是很好。
共有 0 条评论