僕はWordpressをカスタマイズするときに、WP_Queryを利用する必要があると「うわっ、面倒くせぇ」となってしまいます。
WP_Queryは、引数に設定できる項目が多すぎて、とてもじゃないけど覚えられません。なので、結構利用する関数なんですけど、毎回検索から調べて利用しています。
ただ最近、簡単なものならWP_Queryに関する一連のコードを生成してくれるGenerate WordPress WP_Queryというツールを知って、これが結構便利だったので紹介です。
目次
Generate WordPress WP_Queryとは
Generate WordPress WP_Queryは、必要な値を入力して、WP_Queryに関するコードを手軽に生成してくれるコードジェネレートツールです。
WP_Queryの引数の全ての設定項目に対応しているわけではありませんが、簡単なものなら手軽にコードを作成してくれるコーディングの補助ツールになっています。
以下のように出力してくれます。
// WP_Query arguments
$args = array (
'cat' => '1',
'category_name' => 'cat1',
'tag_id' => '1',
'tag' => 'tag1',
);
// The Query
$query = new WP_Query( $args );
全ての入力項目に、値を適当に入力したら、以下のように出力されます。
// WP_Query arguments
$args = array (
'p' => '1',
'name' => 'post1',
'page_id' => '1',
'pagename' => 'page1',
'post_parent' => '1',
'post_type' => array( 'post' ),
'post_status' => array( 'publish' ),
'cat' => '1',
'category_name' => 'cat1',
'tag_id' => '1',
'tag' => 'tag1',
'author' => '1',
'author_name' => 'author1',
's' => 'keywords',
'nopaging' => true,
'paged' => '1',
'posts_per_page' => '10',
'posts_per_archive_page' => '10',
'ignore_sticky_posts' => true,
'offset' => '1',
'order' => 'ASC',
'orderby' => 'rand',
'year' => '2015',
'monthnum' => '12',
'day' => '16',
'hour' => '11',
'minute' => '10',
'second' => '20',
'meta_query' => array(
array(
'key' => 'key',
'value' => 'Value',
'compare' => '=',
'type' => 'CHAR',
),
),
'perm' => 'readable',
'cache_results' => true,
'update_post_meta_cache' => true,
'update_post_term_cache' => true,
);
// The Query
$query = new WP_Query( $args );
// The Loop
if ( $query->have_posts() ) {
while ( $query->have_posts() ) {
$query->the_post();
// do something
}
} else {
// no posts found
}
// Restore original Post Data
wp_reset_postdata();
サンプルのため、通常は行わないような設定値になっています。
ただ、全ての入力項目を設定しても、上記の通り全ての設定項目に対応しているわけではありません。
もう少し込み入ったクエリを発行する場合は、やはり以下のようなサイトで調べる必要はあると思います。
まとめ
Generate WordPress WP_Queryは、WP_Queryで利用される設定項目の中でも、よく利用されるものしか生成はできません。
ただ、僕の場合は、物覚えが悪くループ部分のコードすら忘れてしまうので、WP_Queryを利用するのに必要な全体の雛形的コードを発行してくれるというだけでも、個人的にはありがたいです。
結局、Wordpress制作で利用するには、生成されたコードを編集する必要はあると思いますが、「コードを書くちょっとした手間を省きたい」とか「WP_Queryをなるべく視覚的にわかりやすく利用したい」なんて時には、役に立つかもしれません。