【wordpress】WP_Queryって何なのさ

Author:

ブログのトップページには最新の投稿がずらりと並びますよね。
その並びの中にもう一つループを追加したり、
そのループを書き換えたりするクラスがWP_Queryというものです。

カテゴリー一覧とかウィジェットにも使われていますよね。

使い方は
$query = new WP_Query($args);
こんな感じ。
argsに入れたい条件を記入します。

詳細はcodexにもあるけど、一つなら=でつないで書く。
new WP_Query(‘cat=4’);
二つならarrayにする。
new WP_Query(array(‘cat’=>4, ‘tag’=>’game’);

んで、投稿を取得する際のhave_post、the_postに注意。
have_postやthe_postはクラスのメンバにしないといけません。
しかしthe_titleやthe_contentはクラスのメンバにする必要はありません。

while ( $query->have_posts() ){
$query->the_post();
the_title();
}

こんな感じになります。the_postにクラス忘れるとメインループのデータが取得されてしまいます。
WP_Queryのthe_titleとかやってもエラーになります。

Share on Facebook
Pocket