wordpress搜索结果排除指定文章或页面

wordpress默认搜索结果会出现包含博客页面、私密文章的内容,出于网站各种情况不想把这些文章显示在搜索结果中,可以通过添加函数代码将这些文章或页面排除在搜索结果之外。方法比较简单,有现成的代码,只需要替换相关的文章或页面ID就可以了。

在当前主题的functions.php文件中添加以下代码:

1
2
3
4
5
6
7
function my_search_filter($query) { 
	if ( !$query->is_admin && $query->is_search) { 
		$query->set('post__not_in', array(ID,ID,ID,ID) ); 
	} 
	return $query; 
} 
add_filter( 'pre_get_posts', 'my_search_filter' );

把其中的替换为要排除的文章ID或页面ID,多篇文章或页面用英文逗号隔开

网友留言:

  1. 2013-07-22回复

    这个到是简单,但想要排除就得一个一个的ID输入,麻烦呀。

发表留言