サポート » 使い方全般 » カスタムフィールドで日付を入力したものを判定したい

  • お世話になります。

    カスタムフィールドで、
    公開日(start_day)と終了日(end_day)という2つの日付入力項目を作りました。
    これをベースに、この期間の範囲に該当する記事を出力したく色々調べています。

    仮に、終了日を過ぎていない記事を取得する場合、

    $current_date = date_i18n( 'Y/m/d' );
    $args = array(
        'meta_query' => array(
            array(
                'key' => 'end_day',
                'value' => $current_date,
                'compare' => '>=',
                'type' => 'DATE'
            )
        )
    );

    と書くことでできました。

    2つの期間の範囲内の記事を検索する場合は、
    「開始日当日かそれ以降」で「終了日当日かそれ以前」という方法かな、と思うのですが、
    2つのデータを比較する書き方が分からず悩んでいます。

    初歩的な質問で大変恐縮なのですが、
    どなたか、お分かりになられる方がいらしたら、
    ご教授いただけないでしょうか?

    宜しくお願いいたします。

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • $current_date = date_i18n( 'Y/m/d' );
    $args = array(
        'meta_query' => array(
            'relation' => 'AND',
            array(
                'key' => 'start_day',
                'value' => $current_date,
                'compare' => '<=',
                'type' => 'DATE'
            ),
            array(
                'key' => 'end_day',
                'value' => $current_date,
                'compare' => '>=',
                'type' => 'DATE'
            )
        )
    );

    動くかどうかは未確認です。
    参照:
    http://codex.wordpress.org/Class_Reference/WP_Query

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • トピック「カスタムフィールドで日付を入力したものを判定したい」には新たに返信することはできません。