阿里云服务器

我们在用wordpress搜索的时候都了解,会把所有相关的文章包括页面都搜索出来。

如果是博客网站倒是没有关系,做wordpress企业站的时候 产品和新闻一起搜索出来是不合适的,我们需要在搜页面上面去限制一下。

只需要在主题中的function.php函数中写入限制规则就可以了。

如果需要排除特定文章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');

文章和页面的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');

通过上面代码,就可以轻松自定义显示wordpress搜索页面。

相关阅读:
  • wordpress搬家出现 is_dir(): open_basedir restriction in effect. 错误的解决方法
  • wordpress不同用户级别登入跳转不同页面的设置方法
  • wordpress网站调用置顶文章的方法
  • wordpress设置隐藏内容指定用户级别可见
  • wordpress文章按浏览量排序的方法
  • 让wordpress页面具备标签和分类功能的方法
  • wordpress注册填写页面功能添加插件ludou-custom-register
  • wordpress网站通过页面ID获取标题和链接的方法
  • wordpress别名自动转换成英文和拼音功能
  • wordpress调用当前分类文章列表的方法