2016-04-25 37 views
0

我想要计算某些元键值存在的帖子数量,在这种情况下帖子的值为'soft'的键值为'texture',而且有一个'红色','蓝色'或'绿色'的关键'颜色'。基于多个元键值对帖子进行计算

我的代码没有错误,但它似乎算所有职位,而不是只是那些与元键值提到:

$args = array(
    'posts_per_page' => -1, 
    'post_type'   => 'post', 
    'post_status'  => 'publish', 
    'author'   => $current_user_id, 
    'meta_query' => array(
     'key' => 'texture', 
     'value' => 'soft' 
    ), 
    array(
     'key' => 'colours', 
     'value' => array('red', 'blue', 'green') 
    ) 
); 

$posts_query = new WP_Query($args); 
$the_count = $posts_query->post_count; 

echo $the_count; 

我在做什么错?

干杯。

回答

1

尝试在具有多个值('red', 'blue', 'green')这样的元阵将在meta_query'relationship' => 'AND''compare' => 'IN'

'meta_query' => array(
    'relationship' => 'AND', 
    array(
     'key' => 'texture', 
     'value' => 'soft' 
    ), 
    array(
     'key' => 'colours', 
     'value' => array('red', 'blue', 'green'), 
     'compare' => 'IN' 
    ) 
) 

编辑#1:

也许将围绕你的价值观%马克将解决问题,我不是100%肯定它会工作,但你可以尝试它,像这样:

'meta_query' => array(
    'relationship' => 'AND', 
    array(
     'key' => 'texture', 
     'value' => 'soft' 
    ), 
    array(
     'key' => 'colours', 
     'value' => array('%red%', '%blue%', '%green%'), 
     'compare' => 'IN' 
    ) 
) 

我希望它的作品,谢谢..

+0

我早就预料到的工作,但它仍然被所有帖子。 – user3256143

+0

@ user3256143查看我更新的答案。 –

+0

是的,我已经 - 除非您更新后再次更新它? – user3256143