阿里云服务器

我们在用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编辑框不让span过滤的方法
  • wordpress搜索为空时仍然返回结果问题
  • wordpress注册页取消邮箱的方法
  • wordpress用户头像在线调用代码
  • wordpress自动隐藏email注册,直接用户名密码注册
  • wordpress设置游客只能访问指定页面的方法
  • wordpress列表分页显示404页面的解决办法
  • wordpress页面默认排序修改的方法
  • wordpress新版本5.4 “Adderley” 发布上线,更新多项功能
  • wordpress默认编辑器功能增加的方法