WordPress搜索结果中排除指定的页面或文章或分类

发表于 2018年6月22日 · 23:18:38

排除所有页面

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

排除指定 ID 的文章或页面


//搜索结果排除特定 ID 的文章或页面
function Bing_search_filter_id($query) {
	if ( !$query->is_admin && $query->is_search) {
		$query->set('post__not_in', array(1,2));//文章或者页面的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','-1,-2'); //分类的ID,前面加负号表示排除;如果直接写ID,则表示只在该ID中搜索
	}
	return $query;
}
add_filter('pre_get_posts','Bing_search_filter_category');

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

正在拼命加载中...