have_posts()
参照:WordPress Codex have_posts()
WP_Queryクラスのメソッド。
構文
have_posts()
have_posts()の詳細
動 作
表示するデータが$wp_queryに存在していればtrueなければfalse。
while文中では存在する投稿数分の回数がループする。
$wp_queryのプロパティ$current_postと$post_countを使って処理。
$current_postプロパティ:
表示されようとしている投稿の数が格納されている。
$post_countプロパティ:
表示される投稿の数が格納されている。
返り値
表示すべきデータがある場合にはtrue。
表示すべきデータがない場合にはfalse。
引 数
なし
<?php public function have_posts() { if ( $this->current_post + 1 < $this->post_count ) { return true; } elseif ( $this->current_post + 1 == $this->post_count && $this->post_count > 0 ) { /** * Fires once the loop has ended. * * @since 2.0.0 * * @param WP_Query $this The WP_Query instance (passed by reference). */ do_action_ref_array( 'loop_end', array( &$this ) ); // Do some cleaning up after the loop $this->rewind_posts(); } elseif ( 0 === $this->post_count ) { /** * Fires if no results are found in a post query. * * @since 4.9.0 * * @param WP_Query $this The WP_Query instance. */ do_action( 'loop_no_results', $this ); } $this->in_the_loop = false; return false; } ?>