从标记模板中排除类别

时间:2016-10-12 作者:AKNL

我正在尝试从标记模板中排除类别。搜索什么都没给我,而且有点卡住了。当我将下面的代码添加到我的标签模板时,它会显示所有帖子。。。我真的很想显示所有带有特定标签的帖子,但不是类别ID 433中的帖子。

<?php $query = new WP_Query( array(\'cat\' => -433, ) ); ?>
                        <?php if ($query->have_posts()) : ?>
                        <?php while ($query->have_posts()) : $query->the_post(); ?>
所以,这不起作用:)也尝试了这个:

$query = new WP_Query( array( \'category__not_in\' => array( 433 ) ) );
还显示所有帖子。希望有人有主意。

1 个回复
最合适的回答,由SO网友:stims 整理而成

您是否尝试过像这样在标记模板中使用普通循环

<?php while ( have_posts() ) : the_post() ?>
    //add content code or template
<?php endwhile; ?>
然后使用pre_get_posts 像这样过滤

function exclude_category( $query ) {
    if ( $query->is_tag() && $query->is_main_query() ) {
        $query->set( \'cat\', \'-433\' );
    }
}
add_action( \'pre_get_posts\', \'exclude_category\' );

相关推荐

WP_DROPDOWN_CATEGORIES和自定义分类+自定义帖子类型

我已经创建了名为“的自定义帖子类型”;案例研究;(使用slug案例研究),支持自定义分类法,称为;主题;。我正在努力实现什么?简单的下拉列表,在选项选择上重定向到特定的分类术语页面。代码:<form id="category-select" class="category-select" action="<?php bloginfo(\'url\'); ?>" method="get&quo