WordPress禁止/关闭前端站内搜索功能方法 减轻数据库压力

WordPress程序确实是比较好用的,无论是个人博客,还是普通的内容网站基本上都会去使用。但是,如果不解决程序优化和负载问题,可能会导致使用时间久了速度越来越慢。比如内容较多的时候,我们使用搜索机制会导致数据库加载查询较大,我们看到很多网站都直接接入百度、谷歌等内置搜索。

国外主机优惠在前面也有文章分享到\”禁用WordPress网站搜索功能 降低数据库检索负担\”和\”WordPress排除指定文章/分类内容不被站内搜索显示出来\”文章。刚才在整理收藏夹的时候看到之前还保存了一份禁止前端搜索的方法,这里刚才测试之后发现也是可以用的,一并整理记录。

第一、脚本部分

//关闭站内搜索
if(!is_admin()){
function fb_filter_query( $query, $error = true ) {
if ( is_search() ) {
$query->is_search = false;
$query->query_vars[s] = false;
$query->query[s] = false;
if ( $error == true )
$query->is_404 = true;
}
}
add_action( \’parse_query\’, \’fb_filter_query\’ );
add_filter( \’get_search_form\’, create_function( \’$a\’, \”return null;\” ) );
}

其实仔细一看和之前的还是一样的。既然写到这里就一并发布吧。

第二、如何使用

直接将脚本添加到当前主题Functions.php文件中即可生效。这时候我们再去前端搜索看到的是404页面。