温馨提示:网站使用自适应技术,手机与电脑显示界面不同,电脑界面显示效果更佳。

做了个小站,积累一些技术,分享一些原创
    体会生活,记录一些小随笔,闲说心得

wordpress隐藏某个分类不在首页显示

最近朋友整理一些文章,只是自己记录用,又不想公开。他告诉我说想着将文章设置为私密,但想想设置私密后,每次要看文章,还要登录后台才行。所以,索性设置为需要密码,并将它单独分了一个类,这样可以在不登录的情况下看文章。可后来,他觉得有一个问题,他发现在他的首页最新文章里,显示出这些他发的这些最新,有点觉得不行。所以问我,有什么办法,不让这个分类的文章在首页显示。

当然,是有的,其实也不难。

一般,找到你主题的functions.php函数文件,添加以下代码过滤就行了:

//在首页让某些分类不显示
function exclude_category_home( $query ) {
if ( $query->is_home ) {
$query->set( 'cat', '-88' ); //你要排除的分类ID
}
return $query;
}

add_filter( 'pre_get_posts', 'exclude_category_home' );

其中:88,就是你要排除的分类ID了,这个分类id,可在你编辑分类时在浏览器的地址栏就可以看到。注意,修改时别将例-88,前面的减号给改没了。

另外,如果你要同时排除多个分类,那只需在-88后面加逗号隔开加另一个分类ID即可,例如上面的就是:-88,-90 (这样就是排除88和90两个ID的分类

当然,你要在其它页排除也可以的,将以下代码加入在前面

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

一样的:88,就是要排除的分类ID

好了,需要的朋友可以去试试了。

点击数:640

你可能也喜欢下面相关文章:

发表回复

必填项已用*标注