WordPress自带的搜索功能效率是非常低的,如果有人利用这个缺陷发起搜索请求,就会导致你的服务器出现宕机。那么如何禁止WordPress 前台搜索功能?我们只需要在当前WordPress主题的 functions.php 文件里加入以下代码即可。

//禁用WordPress前台搜索功能

function disable_search( $query, $error = true ) {

if (is_search() && !is_admin()) {

$query->is_search = false;

$query->query_vars[\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’s\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’] = false;

$query->query[\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’s\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’] = false;

if ( $error == true )

// 执行搜索后显示的错误页面

// $query->is_home = true; //跳转到首页

$query->is_404 = true;//跳转到404页

}

}

add_action( \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’parse_query\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’, \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’disable_search\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’ );

add_filter( \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’get_search_form\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’, create_function( \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’$a\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’, \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\”return null;\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\” ) );

可以选择执行搜索后显示的错误页面,是跳转到 404 或者网站首页。原代码来自网络,不支持 PHP7.2,修改了一下可以支持高版本 PHP。

相关新闻

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

联系我们

联系我们

151-1101-0018

在线咨询:
邮件:30115776@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
关注微信
分享本页
返回顶部