有些时候为了特定内容的需要,我们希望某个分类的内容不会在博客首页显示更新出来的内容,而是在第二页开始展示。本博在学习C语言时需要这样的功能,所以把这个方法整理分享到博客中,以便以后还需要使用直接复制。

如何让wordpress文章不在首页显示?

如何让wordpress文章不在首页显示

第一、修改index.php

要解决这一问题,我们要用首页模板里面的query_posts函数:
后台 – 外观 – 编辑 – 首页模板(index.php)

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

修改为:

<?php if ( have_posts() ) : query_posts($query_string .'&cat=-20,-22');
while ( have_posts() ) : the_post(); ?>

直接在当前主题模板的首页index.php中修改调出代码,比如上面的代码中是让20和22分类不显示出来。

第二、functions.php修改

这个方法是比较好的,建议使用。

//在首页中排除某些分类
function exclude_category_home( $query ) {
if ( $query->is_home ) {
$query->set( 'cat', '-20, -22' ); //你要排除的分类ID
}
return $query;
}
add_filter( 'pre_get_posts', 'exclude_category_home' );

这个方法直接不会有任何页面空缺问题,而且在最新内容中也不会出现。直接在当前主题的functions.php添加上面的脚本,修改对应的分类排除。

» 订阅本站: http://www.0523jz.com/feed