Loading
0

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的情況統計得也不是很好。