私はこのフォーマット16/09/2013(d/m/Y)のカスタムフィールド "date"を作成しました。
今日の日付と日付を比較して投稿のみを表示するにはどうすればよいですか。
これはうまくいかない私の質問です!
$args = array(
'posts_per_page' => 100,
'meta_key' => 'date',
'orderby' => 'meta_value',
'order' => 'ASC',
'meta_query' => array(
array(
'key' => 'city',
'value' => 'London',
'compare' => 'LIKE'
),
array(
'key' => 'date',
'value' => date("Y/m/d"),
'compare' => '>=',
'type' => 'DATE'
),
)
);
meta.php:777 を見てください。
... CAST($alias.meta_value AS {$meta_type}) {$meta_compare} {$meta_compare_string})...
したがって、DATE比較を使用したい場合は、MySQL互換の日付形式(YYYY-MM-DD)を使用する必要があります。
コードのこの部分を変更してください。
array(
'key' => 'date',
'value' => date("Y/m/d"),
'compare' => '>=',
'type' => 'DATE'
),
に:
array(
'key' => 'date',
'value' => date("Y-m-d"), // <- change
'compare' => '>=',
'type' => 'DATE'
),
そしてそれはちょうどうまくいくはずです。