前提:
ミュージシャンのライブスケジュール用に、
カスタムフィールド(key:live_date)にDATE型の値(yyyy-mm-dd)を入れている。
その値を元に、指定した範囲の投稿を取得。(今月のライブなど)
※Wordpressには投稿日時を指定するdate_queryというパラメータがあるが、投稿日時自体は予約投稿などに使いたいので、今回はカスタムフィールドにライブ日時を設定している。
カスタム投稿用のパラメータcompareで、BETWEENなどの演算子が使え、しかもtype='DATE'と指定する事で、yyyy-mm-ddをそのまま比較する事が出来る。
具体的には、
$args = array(
'order' => ASC,
'orderby' => 'meta_value',
'meta_query' => array(
'relation' => 'AND',
array(
'key' => 'live_date',
'value'=>array( '2016-05-01', '2016-05-31' ), //ここに配列で範囲をDATE型で設定。
'compare'=>'BETWEEN',
'type'=>'DATE'
)
)
);
$wp_query = new WP_Query($args);
みたいな形。
ほんと凄い進化だねwordpress。