Why post__not_in is ignored?

时间:2017-05-31 作者:user103182

我使用下面的代码段,但“post\\uu not\\u in”并不排除变量中定义的页面id。我还尝试了“排除”,它们都不起作用。如何修复此问题?

$exclude_ids = array(294,278,6758,9582,9674,8638,8585,7359);
$args = array(
            \'paged\'          => $paged,
            \'post__in\'       => $ids,
            \'post__not_in\'   => $exclude_ids,
            \'posts_per_page\' => -1,
            \'post_type\'      => \'page\',
            \'orderby\'        => \'menu_order\',
            \'order\'          => \'ASC\'
    );

$wp_query = null;
$wp_query = new WP_Query($args);

1 个回复
SO网友:Ben HartLenn

根据Codex entry:

“post\\uu not\\u in(数组)-使用post ID。指定不检索的post。If this is used in the same query as post__in, it will be ignored.“”

尝试创建一个要显示的帖子id数组,或创建一个要排除的帖子id数组,而不是同时尝试这两种操作。

编辑:如果要使用当前代码排除特定的页面集,只需删除$args, 您的查询应在以下时间后运行:

$exclude_ids = array(294,278,6758,9582,9674,8638,8585,7359);
$args = array(
        \'paged\'          => $paged,
        /***** \'post__in\'       => $ids, ***** Remove this line *****/
        \'post__not_in\'   => $exclude_ids,
        \'posts_per_page\' => -1,
        \'post_type\'      => \'page\',
        \'orderby\'        => \'menu_order\',
        \'order\'          => \'ASC\'
);

$my_query = new WP_Query($args);

结束

相关推荐

Get_Pages无法加载具有自定义帖子类型的页面

我构建了一个单页主题,并使用get_pages() 加载所有页面的步骤front-pages.php, 但我无法加载带有自定义帖子类型的页面。这是我的密码front-pages.php:$pages = get_pages( array( \'sort_order\' => \'ASC\', \'sort_column\' => \'menu_order\' ) ); foreach ( $pages as $page_data ) {&