首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >WP_Query() - meta_query或tax_query

WP_Query() - meta_query或tax_query
EN

Stack Overflow用户
提问于 2014-07-14 18:22:13
回答 1查看 4.3K关注 0票数 6

我试图使用WP_Query创建一个meta_query元素和tax_query元素的查询。问题是,我不想找到两个条件都满足的结果(和子句),我希望找到满足其中一个条件或另一个条件的条件(OR子句)。

所以我从这些args开始:

代码语言:javascript
运行
复制
$args = array(
    'meta_query' => array(
        array(
            'key' => 'some-meta',
            'value' => 'some-value',
        )
    ),

    'tax_query' => array(
        array(
            'taxonomy' => 'some-taxonomy',
            'field' => 'slug',
            'terms' => array('some-term')
        )
    )
);

当运行WP_Query时,我得到了where子句(为了清晰起见,这里简化了):

代码语言:javascript
运行
复制
WHERE ( wp_term_relationships.term_taxonomy_id IN (336) ) 
    AND ( 
        (wp_postmeta.meta_key = 'some-meta' 
        AND CAST(wp_postmeta.meta_value AS CHAR) = 'some-value') 
    ) 

是否有可能将某些参数传递到WP_Query对象中,该对象将首先更改该对象并将其更改为OR?我想要的是:

代码语言:javascript
运行
复制
WHERE ( wp_term_relationships.term_taxonomy_id IN (336) ) 
    OR ( 
        (wp_postmeta.meta_key = 'some-meta' 
        AND CAST(wp_postmeta.meta_value AS CHAR) = 'some-value') 
    ) 
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-19 04:37:28

您不能用WP_Query实现这一点。您需要对此进行自定义查询。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24743202

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档