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,多篇文章或页面用英文逗号隔开