WPのカスタム投稿タイプの件数をトップページで表示する方法

01_count_post

カスタム投稿の記事総件数を表示する方法

トップページでカスタム投稿の記事件数を表示したいという要望があり、対応したのでメモしておきます。
WordPress 記事数を取得する最もシンプルな方法の「複雑な条件に合致する記事数を取得する」を参考にしました。

「shop」というカスタム投稿を利用している場合、下記の様に記述しました。

<?php
$numposts = $wpdb->get_var("SELECT count(*) FROM $wpdb->posts WHERE post_status = 'publish' AND post_type = 'shop'");
?>
<p><?php if (0 < $numposts){
    $numposts = number_format($numposts);
    echo '店舗数<span>' . $numposts . '</span>件';
}
?></p>

インストールしたら作られる投稿の記事件数を表示したい場合は、post_type = ‘shop’のところをpost_type = ‘post’にすると投稿件数を取得できるようになります。
なので、ご自身の投稿タイプに合わせて変更してみてください。

タームの件数を表示する方法

総件数だけでなく、カスタム投稿タイプに登録されているタームの件数をトップページ表示したいという要望もあり、対応したのでメモしておきます。
タームの数をスラッグ名やターム名から取得するを参考にしました。

オプションは、Codexを参照しました。

今回はスラッグ名を指定して件数を取得しました。
スラッグ名:aomori
タクソノミー名:area

<?php $term = get_term_by( 'slug', 'aomori', 'area' ); $count = $term->count; ?>
<p>青森(<?php echo $count ?>)</p>

件数取得、もっと大変かと思いましたがやってみると以外と簡単でした。
やったことないとは調べてみないと方法がわかりませんが、WordPressはたくさん情報が掲載されているので助かります。

掲載されているものをそのままコピペして対応しただけだと、すぐにやったことを忘れてしまうのでこのブログでメモするようになって記憶に残るようになりました。
また同じような要望があればこの記事を参考にして組んでいきます。

スポンサーリンク
ad
ad

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
ad