WordPress獲取指定分類文章數量方法總結 有需要的朋友可參考一下。
有時候我們想獲取某個分類(category下的文章數目,以便在博客的某個地方顯示出來。下面就提供幾個獲取特定分類的文章數的方法,你可以根據個人喜好選擇.
方法一:將以下PHP代碼放置在主題目錄下的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"; //Vevb.com
- 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);
- }
- }
然后在需要的地方調用該函數即可,該函數提供三種調用方式.
1、在主循環中調出該函數,且不提供參數,則返回第一個分類的文章數,代碼如下:
<?php echo wt_get_category_count(); ?>
2、提供的參數為數字,且該數字為分類的ID號,則返回對應ID的分類的文章數,代碼如下:
<?php echo wt_get_category_count(1); ?>
3、提供分類的別名,則返回對應縮略名(別名)的分類文章數,代碼如下:
<?php echo wt_get_category_count('hello-world'); ?>
該函數對于含有子分類的分類,文章數統計上會有稍許誤差,對于分類文章數為0的情況統計得也不是很好.
方法二:其實我們可以直接使用WordPress的內置函數wp_list_categories(),只是傳遞函數的時候注意一下就行了,代碼如下:
- <?php echo strip_tags(wp_list_categories('include=3&hide_empty=0&use_desc_for_title =0&echo=0&show_count=1&style=none&hierarchical =0&title_li=')); ?>
參數include的等號后面3改成你想要統計文章數的分類ID即可,最終輸出形式為 分類名稱(文章數),如 教程指南(20)
方法三:使用WordPress內置函數get_category_by_slug(),代碼如下:
- <?php
- // 將以下category-name改成你的分類別名即可
- echo get_category_by_slug('category-name')->count;
- >
方法四:使用WordPress內置函數get_category,代碼如下:
- <?php
- // 將以下cat_ID改成你的分類ID即可
- echo get_category(cat_ID)->count;
- >
新聞熱點
疑難解答
圖片精選