0

私はこれに非常に近いように感じますが、クエリは空のまま表示され続けます。基本的に、Imは2つの日付の間のカスタム値を照会しようとしています。開始日が現在の日付よりも短く、終了日が現在の日付以上の場合

        $args = array(
        'taxonomy' => 'exhibition_type', 
        'term' => 'faculty',
        'numberposts' => 10,
        'post_type' => 'exhibitions',
        'meta_key' => 'start_date_of_event',
        'meta_query' => array(
            'relation' => 'AND',
                array(
                    'key' => 'start_date_of_event',
                    'value' => $current,
                    'compare' => '<'
                ),
                array(
                    'key' => 'end_event_date',
                    'value' => $current,
                    'compare' => '>='
                )
            ),
        'order_by' => 'meta_value_num',
        'order' => 'ASC',
        'paged' =>  $paged
    );

結果は0になり続けます:'(私は現在立ち往生しています。どんな助けでも大歓迎です。

4

2 に答える 2

1

それが可能だ。データを間違って入力しました:D

動作するコードは次のとおりです。

   $args = array(
    'taxonomy' => 'exhibition_type', 
    'term' => 'faculty',
    'numberposts' => 10,
    'post_type' => 'exhibitions',
    'meta_key' => 'start_date_of_event',
    'meta_query' => array(
        'relation' => 'AND',
            array(
                'key' => 'start_date_of_event',
                'value' => $current,
                'compare' => '<'
            ),
            array(
                'key' => 'end_date_of_event',
                'value' => $current,
                'compare' => '>='
            )
        ),
    'order_by' => 'meta_value_num',
    'order' => 'ASC',
    'paged' =>  $paged
);

このコードは2つのmeta_values(start_date_of_event&end_date_of_event)を使用し、それを現在の日付($ current = date('Ymd');)と比較します。これが他の人に役立つことを願っています。:D

于 2012-09-07T21:34:17.793 に答える
0

私があなたを理解しているなら、これがあなたの答えだと思います、

if(strtotime($args['meta_query'][0]['key']) > strtotime($args['meta_query'][1]['key'])){
     //do stuff here
}
于 2012-08-30T14:42:33.303 に答える