WordPress-如何隐藏父类别的帖子,而不隐藏子类别的帖子

时间:2020-10-22 16:39:01

标签: wordpress

我有此代码:

            $argsQuery = array(
                'post__not_in' => get_option( 'sticky_posts' ),
                'orderby' => 'date',
                'cat' => '-1,-10,-25,-26',
                'posts_per_page'   => 7 
            );

我想排除父类别(id 7)中的帖子,但我希望子类别中的帖子仍然可见。 如果我这样做:

'cat' => '-1,-10,-25,-26,-7',

儿童类别也消失了。我已经尝试了category__not_in,但是它也不起作用。你知道我能做什么吗?

2 个答案:

答案 0 :(得分:0)

尝试下面的代码,也许它将对您有用。

$included_cat_ids = array(1,10,25,26); 
$exclude_cat_id = 7;
$subcats = get_categories('child_of=' . $exclude_cat_id);
foreach($subcats as $subcat) {
    $included_cat_ids[] = $subcat->cat_ID;
} 
   
$argsQuery = array(
    'post__not_in' => get_option( 'sticky_posts' ),
    'orderby' => 'date',
    'cat' => $included_cat_ids,
    'posts_per_page'   => 7 
);

答案 1 :(得分:0)

我选择了一种解决问题的简便方法,并在属于父类别的帖子上添加了标签,然后排除了该标签。

                $argsQuery = array(
                'post__not_in' => get_option( 'sticky_posts' ),
                'orderby' => 'date',
                'cat' => '-1,-10,-25,-26',
                'tag__not_in' => array(33),
                'posts_per_page'   => 7 
            );

谢谢大家!

相关问题