[WordPress开发]搜索结果排除指定页面/文章/自定义分类

这就很尴尬了,搜索结果也太广泛了。

用户搜索到一些无关的内容,估计也很不爽,然后就尝试在搜索结果页面排除一些内容,例如:指定页面、指定文章、指定自定义分类(post_type)等内容。

嗯,折腾一阵子也算是折腾好了,现在搜索页只会显示搜索相关的文章了。

方法也挺简单,几行代码就能搞定,下面分享几段搜索结果排除内容的WordPress代码

搜索结果排除指定ID文章或页面

//搜索结果排除指定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');

搜索结果排除指定分类的文章

//搜索结果排除某些分类的文章
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');

搜索结果排除所有页面

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

搜索结果排除自定义分类(post_type)

//搜索结果排除自定义分类(post_type)
function searchAll( $query ) {
if ( $query->is_search ) { $query->set( 'post_type', array( 'site' )); }
return !$query;
}
add_filter( 'the_search_query', 'searchAll' );

 

给TA打赏
共{{data.count}}人
人已打赏
投稿专区

[WordPress开发]自动获取文章内第一张图片做为缩略图

2020-4-22 10:29:01

投稿专区

[WordPress开发]实现只搜索文章标题

2020-4-22 10:29:15

下载说明

  • 1、绅士视界所提供的压缩包若无特别说明,解压密码均为wysacg.top
  • 2、下载后文件若为压缩包格式,请安装7Z软件或者其它压缩软件进行解压;
  • 3、部分资源后缀为 .wys 请自行修改为 .7z
  • 4、资源可能会由于内容问题被和谐,遇到此问题,请到文章页面进行反馈,以便无言及时进行更新;

站长声明

本站大部分下载资源收集于网络,只做学习和交流使用,版权归原作者所有;若为付费资源,请在下载后24小时之内自觉删除;若作商业用途,请到原网站购买;由于未及时购买和付费发生的侵权行为,与本站无关。本站发布的内容若侵犯到您的权益,请联系本站删除,我们将及时处理!
2 条回复 A文章作者 M管理员
  1. 呼呼呼呼
    谢谢楼主分享
  2. rylynn
    沙发
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索