wordpress搜索结果中移除Simple Urls插件等特定分类链接

WP插件 欲思 1评论

最近装上了短连接跳转插件Simple Urls(不知道或不了解短连接跳转的朋友可以参考:6个WordPress网站短网址链接跳转插件)。

但是在wordpress自带的搜索结果中总是出现已经发布的Simple Urls跳转文章链接。这些都是不必要显示的,所以要把这些链接内容过滤掉。

下面就告诉你如何在wordpress搜索结果中移除Simple Urls插件的跳转链接:

wordpress搜索结果中移除Simple Urls插件的跳转链接

根据自己的需要,将下面的代码添加到主题的 functions.php 文件中就可以实现自己想要的功能。具体的类型id什么的可以自己修改。

排除特定 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');

注意修改ID,看注释。

排除所有页面

这个我代码我测试过,感觉很实用,可以直接移除Simple Urls插件的分类链接。

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

有时候我们可能不希望某些文章或页面出现在搜索结果当中,那么我们可以使用上面的这些 filter(过滤器) 来过滤掉某些文章或页面。
如果有什么问题。可以在下面留言交流。

转载请注明:欲思博客 » wordpress搜索结果中移除Simple Urls插件等特定分类链接

如果你觉得这篇文章或者我分享的主题对你有帮助,请支持我继续更新网站和主题 !捐赠本站
喜欢 (0)or分享 (0)
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(1)个小伙伴在吐槽
  1. 这个我代码我测试过,感觉很实用,可以直接移除Simple Urls插件的分类链接。 可是这样一来连页面的搜索结果都移除了呀
    kissshot2015-10-10 03:53 回复