あきぞらです。
WordPressの開発をしていて、WP_Queryを使う場面がたまにあります。
そんなとき、検索結果が想定と違って慌てたので、調べることにしてみました。
取得結果の件数が特定の数(10件とか)しかとれない
僕の場合は10件しかとれませんでした。
こんな感じで、クエリを組んでいました。
$args = array( 'post_status' => 'any', 'post_type' => 'attachment' ); $query = new WP_Query( $args );
【原因】post_per_page の指定をしていなかった
$args
でクエリを組むとき、
posts_per_page
を指定していないと、ワードプレスの表示設定(デフォルトでは10件)の件数しかとれない。
post_per_pageを「-1」に指定する
posts_per_page
を「-1」に指定することで、全件取得をすることができます。
$args = array( 'post_status' => 'any', 'post_type' => 'attachment', 'post_per_page' => -1, ); $query = new WP_Query( $args );