WordPress

【WordPress】WP_Queryで取得できる投稿の全件を取得する方法!

あきぞらです。

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 );

-WordPress

Copyright© あきぞらてっく , 2025 All Rights Reserved Powered by AFFINGER5.