首页 / WordPress建站 / 基础教程 / WordPress 搜索结果中排除特定的页面、文章和分类
Loading收藏3

我们可能不希望某些文章或页面出现在搜索结果当中,那么我们可以使用 filter(过滤器) 来过滤掉某些文章或页面。根据自己的需要,将下面的代码添加到主题的 functions.php 文件:

排除特定 ID 的文章或页面

1
2
3
4
5
6
7
8
//搜索结果排除特定 ID 的文章或页面function Bing_search_filter_id($query){if(!$query->is_admin&&$query->is_search){$query->set('post__not_in',array(40,819));//文章或者页面的ID}return$query;}
add_filter('pre_get_posts','Bing_search_filter_id');

注意修改第四行的文章或页面 ID

排除某些分类的文章

1
2
3
4
5
6
7
8
//搜索结果排除某些分类的文章function Bing_search_filter_category($query){if(!$query->is_admin&&$query->is_search){$query->set('cat','-15,-57');//分类的ID,前面加负号表示排除;如果直接写ID,则表示只在该ID中搜索}return$query;}
add_filter('pre_get_posts','Bing_search_filter_category');

注意修改ID,看注释。

排除所有页面

这个我感觉很实用,建议添加

1
2
3
4
5
6
7
8
//搜索结果排除所有页面function search_filter_page($query){if($query->is_search){$query->set('post_type','post');}return$query;}
add_filter('pre_get_posts','search_filter_page');

你可能还喜欢

6 条评论

发表评论

我们是国内最靠谱的WordPress建站团队!

专业承接WordPress网站建设及运维、WordPress主题和插件开发、汉化、安装等服务

联系电话:0773-8282430

查看所有服务项目

视频教程:点击联系我们
定制开发:点击联系我们
售后支持:点击联系我们
商务合作:点击联系我们

固话:0773-8282-430

手机:133-0773-9152

微信扫一扫,联系我们