首页 > 解决方案 > WP po​​st__not_in 另一个查询不过滤

问题描述

我的第一个查询没问题

$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);

可以帮我?

标签: phpwordpress

解决方案


post__not_ins从您的代码中删除多余的部分。

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

您的代码应该是:

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

$featured = new WP_Query($args2);

推荐阅读