WordPress で、投稿されているすべての記事の数を表示する方法です。
「投稿の全記事数」「カスタム投稿の全記事数」「投稿・カスタム投稿、両方の全記事数」と3パターンで表示させるコードを紹介します。
それぞれのコードを任意の場所に記述しますが、ループの中でも外でもOKです。
投稿の全記事数を表示
投稿の全記事数を表示させたい場合は、以下のように記述します。
<?php $numposts = $wpdb->get_var("SELECT count(*) FROM $wpdb->posts WHERE post_status = 'publish' AND post_type = 'post'"); if (0 < $numposts) $numposts = number_format($numposts); echo $numposts.'件'; ?>
カスタム投稿の全記事数を表示
次はカスタム投稿の全記事数を表示させたい場合。
仮に「blog」というカスタム投稿を使用していると想定して、以下のように記述します。
<?php $numposts = $wpdb->get_var("SELECT count(*) FROM $wpdb->posts WHERE post_status = 'publish' AND post_type = 'blog'"); if (0 < $numposts) $numposts = number_format($numposts); echo $numposts .'件'; ?>
投稿・カスタム投稿、両方の全記事数を表示
最後に、投稿・カスタム投、両方を含めた全記事数を表示させたい場合です。
ここでは仮に、通常の投稿以外に「blog」と「photo」という2つのカスタム投稿を使用していると想定します。
<?php $numposts = $wpdb->get_var("SELECT count(*) FROM $wpdb->posts WHERE post_status = 'publish' AND post_type IN ('post', 'blog', 'photo')"); if (0 < $numposts) $numposts = number_format($numposts); echo $numposts .'件'; ?>
以上。
これで全記事数を表示できます。