在WP_QUERY中使用OR将否定“NOT EXISTS”比较

时间:2013-01-25 作者:hereswhatidid

我试图通过一个等于“new”或尚未设置的自定义字段筛选帖子。我可以让这些meta\\u查询中的任何一个单独工作,但当我在“OR”查询中使用它们时,“NOT EXISTS”部分将被忽略,查询将返回每个具有任何值集的帖子。下面是导致奇怪行为的示例“meta\\u query”:

array(
  \'relation\' => \'OR\',
  array(
    \'key\' => \'status\',
    \'compare\' => \'NOT EXISTS\',
  ),
  array(
    \'key\' => \'status\',
    \'value\' => \'new\',
    \'compare\' => \'=\',
  ),
);

1 个回复
SO网友:N. F.
array(
  \'relation\' => \'OR\',
  array(
    \'key\' => \'status\',
    \'value\' => \'\', //<--- not required but necessary in this case
    \'compare\' => \'NOT EXISTS\',
  ),
  array(
    \'key\' => \'status\',
    \'value\' => \'new\',
    \'compare\' => \'=\',
  ),
);

That should do it.

结束

相关推荐

使用新的WP-Query()从循环中过滤后期格式;

嗨,我目前正在为我的博客构建一个主题。下面的代码指向最新的帖子(特色帖子)。因为这将有一个不同的风格比所有其他职位。然而我想过滤掉帖子格式:链接使用我在循环中定义的WP查询,因为它给我带来了更多的灵活性。我该怎么做呢? <?php $featured = new WP_Query(); $featured->query(\'showposts=1\'); ?> <?php while ($featured->have_post