WordPress 首页不显示某些分类目录的文章

WordPress 首页设置为动态首页时,默认根据发布时间显示所有发布的文章. 但有些文章不想被动态显示在首页,如短文,说说之类的. 故,需要设置首页不显示某些特定分类类别的文章.

我这次使用的是日主题,用了下面代码无效后,想到去主题设置中进行了一下设置,实现了同样的效果。

如果你的主题没有这样的设置,建议你使用下面的代码!

方法一:

1,打开主题首页文件index.php找到如下代码:

<?php if ( have_posts() ) : ?>
<?php while ( have_posts() ) : the_post(); ?>

修改为:

<?php if ( have_posts() ): query_posts($query_string .’&cat=-9′); ?>

可以把两条语句合并为一条最终修改为:

<?php if ( have_posts() ) : query_posts($query_string .’&cat=-9′); while ( have_posts() ) : the_post(); ?>

其中cat=-9的9就是不想让在首页显示的ID,有人问了怎么知道分类目录ID呢?

进入后台–文章–分类目录,把你鼠标放在要禁止显示的分类目录上面就会看到了如图:

fenleimulu

方法二:

某些主题可能用上面的方法添加后出现各种错误,比如小z就遇到了所有分类目录全部显示同样的文章或无法进行分页等情况,后来通过网友多梦的帮助解决了此问题。在主题目录下的functions.php中添加下面的代码:

//首页排除ID为50的分类
function ex_cat_on_homepage( $query ) {
    if ( $query->is_home() && $query->is_main_query() ) {
        $query->set( 'cat', -50 );
    }
}
add_action( 'pre_get_posts', 'ex_cat_on_homepage' );

分类目录的ID一定要填写正确,否则没有任何效果,获取ID的方法是:后台>>文章>>分类目录,然后将鼠标移动到想要获取的目录上,比如将鼠标移动到WP技巧,然后在浏览器的左下侧就会看到WP技巧ID为:299。如下图:
fenleiid

 

 

【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。
智慧云 » WordPress 首页不显示某些分类目录的文章

发表评论

提供最优质的资源集合

立即查看 了解详情