如何使元查询或关系工作?

时间:2012-04-23 作者:Topher

以下是wp\\U查询参数:

$args = array(
    \'post_type\' => \'sportpages\'
    ,\'post_status\' => \'publish\'
    ,\'posts_per_page\' => 1000
    ,\'post_parent\' => 4738
    ,\'meta_query\' => array(
        \'relation\' => \'OR\'
        ,array(
            \'key\' => \'ecpt_sportgender_2\'
            ,\'value\' => \'Boys\'
            ,\'compare\' => \'LIKE\'
        )
        ,array(
            \'key\' => \'ecpt_sportgender_2\'
            ,\'value\' => \'Both\'
            ,\'compare\' => \'LIKE\'
        )
    )
);
我的结果很奇怪。除非我用男孩换女孩,否则我只能得到男孩的职位,在这种情况下,我会得到女孩。获得“两者”的唯一方法是让它只获得两者,而不是关系。

我把它们放在那里的顺序没有区别。

我错过了什么?

2 个回复
SO网友:kaiser

您可能需要执行以下操作之一

  • \'compare\' => \'=\' (或将其删除,因为这是默认设置)
  • 或。。。\'value\' => $wpdb->esc_like( \'%Boys%\' ) (需要global $wpdb;)\'value\' => $wpdb->esc_like( \'Boys\' ) (需要global $wpdb;)

SO网友:Topher

我解决了我的问题。查询返回了正确的结果,但在稍后的一些代码中,结果被屏蔽了:(

感谢您花时间思考这个问题。

结束

相关推荐

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

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