WordPressの投稿件数で条件分岐させる方法が知りたい。
投稿件数によって表示・非表示の切り替えがしたい。
こんなお悩みを解決します。
WordPressの投稿数を取得できるwp_count_posts
を使って解説します。
https://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/wp_count_posts
この記事を読めば、投稿件数によって条件分岐させることができます。
たとえば、投稿一覧にある「もっとみる」ボタンを投稿件数によって表示・非表示にするのことも可能です。
実務ではよくある内容なので、しっかりと覚えておきましょう^^
もくじ
投稿件数で条件分岐する方法
コードはこちら。
<?php
$count_posts = wp_count_posts();//投稿の数を返します
$published_posts = $count_posts->publish;//公開中の投稿数を取得する
if($published_posts > 4)://もし投稿が5件以上の場合、
?>
//表示させたい内容を記述する
<?php endif; ?>
内容としては、
投稿の数を返し、その中から公開中の投稿数を取得します。
そしてif文を使い「投稿数が○件以上の場合は〜」といった条件分岐にします。
コードの解説
wp_count_posts();
で投稿の数を返します。
そして、$count_posts->publish;
で公開中の投稿数を取得します。
あとはif文を使って条件分岐し、表示させたい内容を記述すればOKです。
カスタム投稿の投稿件数を取得したい場合
<?php
$count_posts = wp_count_posts('カスタム投稿のスラッグ');
$published_posts = $count_posts->publish;
if($published_posts > 4):
?>
//表示させたい内容を記述する
<?php endif; ?>
カスタム投稿の投稿件数を取得するには
wp_count_postsの第一引数に、カスタム投稿のスラッグを入れればOKです。
例:archive-works.phpの場合
<?php
$count_posts = wp_count_posts('works');
$published_posts = $count_posts->publish;
if($published_posts > 4):
?>
//表示させたい内容を記述する
<?php endif; ?>
wp_count_posts(‘works’);と記述すると、カスタム投稿(works)の投稿数を取得できます。
まとめ:投稿件数で条件分岐する方法【表示・非表示にする】
投稿件数で条件分岐する方法について解説しました。
最後までご覧いただきありがとうございました^^
みなさんの参考になれば幸いです。ではっ!
コメント