WordPress カスタムフィールドの日付を使って今月の投稿を取得 «  Moral Hazard!!

ドラマーが音楽やホームページやガラクタを作るよ。

WordPress カスタムフィールドの日付を使って今月の投稿を取得

No Comment wordpress,

前提:
ミュージシャンのライブスケジュール用に、
カスタムフィールド(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。