WP po​​st__not_in另一个查询未过滤

时间:2018-11-11 20:56:33

标签: php wordpress

我的第一个查询还可以

$ids = [];

$novidades = get_posts( array(
        'posts_per_page' => 4,
        'meta_key' => 'meta-checkbox',
        'meta_value' => 'yes'
    ) );
if ( count( $novidades ) ) {
        foreach( $novidades as $novidade ) {
        $ids[] =  $novidade->ID;        
    }
}
//rest of my code is ok

但是,我尝试发布另一条帖子,并忽略第一个查询,但是不起作用,请列出所有帖子

$args2 = array(
'post_type'    => 'post',
'posts__not_in' => $ids     
);

$featured = new WP_Query($args2);

可以帮我吗?

1 个答案:

答案 0 :(得分:0)

它是post__not_in。从代码中删除多余的s

  

post__not_in(数组)-使用帖子ID。指定不检索的帖子。如果在与post__in相同的查询中使用了此查询,它将被忽略。

您的代码应为:

$args2 = array(
    'post_type'    => 'post',
    'post__not_in' => $ids,//<====extra 's' removed
);

$featured = new WP_Query($args2);