WordPressで記事の件数を取得…
たとえば 「現在 ○ 件 あります」 など表示したいときに使いたいですよね。
超カンタンに取得できた
実は WordPress にはじめから用意されている関数がありました。
wp_count_posts 関数
これでとりあえず全件数を取得できます。
wp_count_posts() で通常の投稿 post_type=’post’ の記事数です。
取得するにはもうひと手間必要なのでサンプルコードを。
<?php
$post_counts = wp_count_posts();
// 公開済みの件数
$post_count = $post_counts->publish;
echo "公開済みの記事は ".$post_count." 件です。";
カスタム投稿タイプなら引数に投稿タイプ名を与える
カスタム投稿タイプ お店 ‘shop’ を数えたい場合はこんな感じ
page-shop.php などでこのように記述し全店舗数を表示したい。
<h2>全店舗 <?php echo get_shop_all_count(); ?> 店 から厳選した商品</h2>
functions.php などで全店舗件数を関数で取得できるように記述。
/**
* 全参加店舗数取得
*/
function get_shop_all_count() {
$count_shops = wp_count_posts('shop');
$shop_count = $count_shops->publish;
return $shop_count;
}
これで表示できそうですね。
参考文献
こちらを参考にすると、まだ下書きの件数も取得できることがわかります。
<?php
$post_counts = wp_count_posts();
// 下書きの件数
$post_count = $post_counts->draft;
echo "下書きの記事件数は ".$post_count." 件です。";
ちょっと使い所がわかりませんが(笑)
いろいろ応用して使えそうです。