文章目录
本文最后更新于 2022-10-14,已超过 365 天未更新,内容可能已失效。

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

排除特定 ID 的文章或页面

[hight_code hight_short=”php”]

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

[/hight_code]

排除某些分类的文章

[hight_code hight_short=”php”]

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

[/hight_code]

排除所有页面

[hight_code hight_short=”php”]

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

[/hight_code]

 

CC 许可协议
署名-非商业性使用-相同方式共享 4.0 国际 了解协议
文章链接:https://zptheme.com/4811.html
本文作者:子佩·来源:子佩工作室

除非注明,子佩工作室 文章均为原创,转载请以链接形式标明本文地址。

相关推荐

登录后即可发表评论

社交账号登录

全部评论 (0)