你似乎错过了meta_query
适当地看一下您的代码,您似乎混合了两个元值,所以我们需要将它们组合起来。
$loop = new WP_Query([
\'category_name\' => \'gold\',
\'orderby\' => \'rand\',
\'posts_per_page\' => -1,
\'meta_query\' => [
\'relation\' => \'and\',
[
\'key\' => \'status\',
\'value\' => \'active\'
],
[
\'key\' => \'end_date\',
\'value\' => date(\'Y-m-d\'),
\'compare\' => \'>=\',
\'type\' => \'DATE\'
]
]
]);
而且
date(\'y-m-d\')
返回当前日期(如果我们按此答案创建的日期,将返回21-10-14),这不是有效的日期格式,您将无法进行此比较
即使它正在寻找与当前日期相等或更早的职位,我认为这是不正确的(我可能是错的,所以请随意更正我的=])。
您需要确保在该元字段中存储了有效日期格式,需要date(\'Y-m-d\')
而不是date(\'y-m-d\')
, 请注意大写Y。