本文介绍如何为Bricks Builder Form表单添加Google reCAPTCHA V3验证,Google reCAPTCHA V3服务是Google的一个免费的服务,每个月最多可免费处理 100 万次评估。
reCAPTCHA v3 可帮助您检测网站上存在滥用行为的流量,而无需用户与之互动。reCAPTCHA v3 不会展示人机识别系统验证,而是会返回一个得分,让您可以为自己的网站选择最合适的操作。
在使用Google reCAPTCHA V3服务之前,你需要知道任何JavaScript 的加载都将影响到网站的速度, reCAPTCHA v3也不例外,出于安全角度我是建议给表单配置 reCAPTCHA v3,关于对网站速度的影响,你可以通过插件配置外部链接的预加载。
1、在Google reCAPTCHA 控制台注册网站
访问Google reCAPTCHA主页,点击v3 Admin Console进入管理面板
点击+号,添加一个新的网站
默认创建企业版的reCAPTCHA密钥,企业版也提供了每月最多免费评估 100 万次,但是需要关联到一个Google云平台的项目,并且添加防范比较复杂,这里我们还是切换到经典方式,通过获取密钥的方式来创建。
切换会经典方式之后,输入标签(标签可以设置成域名,方便自己管理),输入需要添加的网站域名,然后点击提交。
提交之后,显示创建好的网站密钥和密钥。
2、在Bricks Builder的API面板中添加reCAPTCHA V3密钥
获取到reCAPTCHA V3密钥之后,返回到网站后台,并进入Bricks管理面板的API Keys管理标签下,将密钥输入要对应的栏目中。然后点击保存。
默认情况下,reCAPTCHA阈值为0.5,如果你依然收到很多垃圾邮件,可以调整阈值。
reCaptcha V3 API 返回一个介于 0.0 和 1.0 之间的值,其中 0.0 很可能是机器人,而 1.0 很可能是人机交互。要增加 Bricks 阈值,请使用以下 PHP 代码段:
add_filter( 'bricks/form/recaptcha_score_threshold', function( $score ) {
// Bricks default is 0.5
$score = 0.8;
return $score;
}, 10, 1 );
3、在Bricks Builder的Form中开启 reCAPTCHA
进入Bricks Builder编辑,并选中Form元素编。辑,点开垃圾邮件防护,并开启 reCAPTCHA。开启之后点击保存。
开启之后,表单的将会被reCAPTCHA保护。
但是你会发现即使你开启了reCAPTCHA服务之后,你在任何地方都看不到reCAPTCHA的图标。
这是因为Bricks主题用CSS隐藏了该图标,让该服务对用来说完全无感知。
.grecaptcha-badge {
visibility: hidden;
}
你可以通过Chrome的检查找到它。