在底部,我有一个显示9个随机自定义帖子类型的查询:
$args= array(
\'post_type\' => \'adverts\',
\'orderby\' => \'rand\',
\'posts_per_page\' => 9,
\'tax_query\' => array(
array(
\'taxonomy\' => \'type\',
\'field\' => \'slug\',
\'terms\' => $term
)
)
);
现在我想显示9个广告(CPT),它们的平均投票数(meta\\u键)低于6。因此,我添加以下内容:
$args= array(
\'post_type\' => \'adverts\',
\'orderby\' => \'rand\',
\'posts_per_page\' => 9,
\'meta_query\' => array(
array(
\'key\' => \'votes_average\',
\'value\' => \'6\',
\'compare\' => \'<\',
\'type\' => \'NUMERIC\',
)
)
);
当我不添加这个meta\\u查询时,我的第一个查询就工作了。我的意思是,它会随机显示帖子,即使是那些“投票数平均值”等于0的帖子。但是,第二次查询不会显示“Voces\\u average”等于0的广告。
我忘了什么吗?
SO网友:aguidis
最后,此meta\\u查询可以工作:
\'meta_query\' => array(
\'relation\' => \'OR\',
array(
\'key\' => \'votes_average\',
\'value\' => \'6\',
\'compare\' => \'<\',
\'type\' => \'NUMERIC\',
),
array(
\'key\' => \'votes_average\',
\'compare\' => \'NOT EXISTS\',
\'value\' => \'null\',
)
),