10255


wordpressでカテゴリー別アーカイブページでカテゴリー別に投稿総数を取得し表示させたいのですが、

[code]

    <?php 
        $post_count = wp_count_posts()->publish; 
        echo $post_count;
    ?>
    
[/code]

上記のコードだどすべての投稿数を取得して表示してしまうと思います。

[code]

    <?php 
        $news_post_count = wp_count_posts('news')->publish; 
        echo $news_post_count;
    ?>
    
[/code]

上記のコードでカテゴリーを指定して取得できるのですが、  
カテゴリーアーカイブ出力ファイルはひとつなので、  
複製してファイルを増やすなんて事はまずしないだろうと勝手に判断しています。

私が行いたいのは、  
どのカテゴリーなのか識別を行い、そのカテゴリーのみの投稿総数をカテゴリータイトル（こちらも取得）と一緒に表示させたいのですが、私はPHPに詳しくないので自己解決に至りませんでした。

解決策をご存知の方がいらっしゃいましたら、ご協力をお願い致します。


CC BY-SA 3.0
2015-05-12T07:14:53.973
10075
2015-05-16T09:26:51.230
7887
question
php wordpress
wordpress カテゴリー別アーカイブページで投稿数を取得して表示させる


> カテゴリー別アーカイブページでカテゴリー別に投稿総数を取得し表示させたい

「現在、ブラウザで表示しているカテゴリーアーカイブページに、そのカテゴリーに属する投稿数を表示する」という認識であっていますでしょうか？

現在表示しているカテゴリーアーカイブページのカテゴリーIDはグローバル変数 `$cat` にセットされているとのことですので、

[code]

    <?php
    $category = get_category( $cat );
    $category_slug = $cat_info->slug;
    $post_count = wp_count_posts( $category_slug )->publish;
    echo $post_count;
    ?>
    
[/code]

といったコードでいかがでしょうか。

動作確認は行っていませんので、動作しない場合は、一度、私の方でも動作確認を行ってみたいと思いますので、その旨コメントいただければと思います。

# 参考

[WordPress › フォーラム »
category.phpで現在のカテゴリースラッグを表示したい](https://ja.forums.wordpress.org/topic/1708)


CC BY-SA 3.0
2015-05-12T13:31:20.800
10081
2015-05-12T13:31:20.800
8160
10075
answer


自己解決いたしましたので、ご報告させていただきます。

カテゴリー名に関しましては、テーマに付属していたカテゴリー名取得のコードを利用しました。

カテゴリー数取得につきましては、
[`get_queried_object()`](http://wpdocs.osdn.jp/%E9%96%A2%E6%95%B0%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9/get_queried_object)
で[カテゴリーオブジェクト](http://wpdocs.osdn.jp/%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88%E3%82%BF%E3%82%B0/get_the_category#.E8.BF.94.E3.81.95.E3.82.8C.E3.82.8B.E3.82.AA.E3.83.96.E3.82.B8.E3.82.A7.E3.82.AF.E3.83.88.E3.81.AE.E3.83.A1.E3.83.B3.E3.83.90.E3.83.BC.E5.A4.89.E6.95.B0)を取得することで以下のように書けました。

[code]

    <?php if ( have_posts() ) : ?>
    
    <?php
        $term = get_queried_object();
        echo ' カテゴリー数は ' . $term->count . ' 件です。';
    ?>
    
    <?php endif; ?>
    
[/code]

他にもっと効率的な方法などございましたら、ご教授いただけると幸いでございます。

取得・表示することはできましたので、解決済みとさせていただきます。


CC BY-SA 3.0
2015-05-16T08:49:34.093
10255
2015-05-16T09:26:51.230
2015-05-16T09:26:51.230
8000
7887
10075
answer