WordPress结合Geetest极验验证实现帅气的注册评论验证方式

  • 第一、注册Geetest极验验证账户
  • 第二、Geetest新增网站获取ID
  • 第三、WordPress插件模式实现验证
  • 第四、无插件实现方式

如果我们WordPress网站开启用户互动评论,势必需要进行评论内容的审核,比如国外主机优惠则采用全部人工审核模式,这样至少可以在后台控制内容的审核发布。如果我们网站是实时展现的,那势必需要有一款评论审核机制,类似的WordPress插件也是比较多的。国外主机优惠在前几天的\”2种适合WordPress注册验证码插件/非插件实现方法\”文章中也有分享,以前也有几篇文章分享过其他的插件方式。

今天在浏览网站的时候,有看到Geetest极验验证,可以结合WordPress插件或者某些无插件功能,实现较为严格的智能过滤验证,根据用户的反馈以及商家自身的介绍,智能化比普通的WP插件有效很多,而且验证界面体验较好,当然这些都是在没有实践前的听闻,下面国外主机优惠准备去试试看。


隐藏

第一、注册Geetest极验验证账户

第二、Geetest新增网站获取ID

第三、WordPress插件模式实现验证

第四、无插件实现方式

第一、注册Geetest极验验证账户

官网地址:http://www.geetest.com

这里我们需要注册一个注册Geetest极验验证账户,我们都看的懂中文,所以注册一个账户应该不难吧。

第二、Geetest新增网站获取ID

这里,我们在注册完毕Geetest账户之后,在后台需要提交需要使用Geetest验证的网站信息,然后获取对应的API ID信息。

看来这里是需要提交站点信息,验证所有权后获取专有API信息。

根据我们实际的用途选择类别,然后确认添加。

这里我们可以看到已经申请到的站点信息ID,我们需要ID和KEY,对于设置功能,我们后面在看,直接先用默认的。

第三、WordPress插件模式实现验证

这里使用geetest插件,直接在WP后台搜索插件安装。安装完毕之后,我们需要激活,提交API信息。

根据界面提示,我们填写公钥、验证私钥,以及评论设置适用于评论、登入,还是注册网站时候。分别填写ID和KEY,下面我就设置评论启用。这里出现点问题,在激活插件之后,密钥也都输入,但是主题评论下面看不到评论框,不懂是不兼容插件呢,还是主题有问题。

第四、无插件实现方式

在上面,使用插件的模式没有实现,这里在网上找到一个无插件的模式,试试看吧。

1、下载必要的文件

必要文件:https://github.com/GeeTeam/gt-php-sdk

需要下载文件,将其中的class.geetestlib.php放到当前主题根目录。

2、修改主题functions.php文件

// WordPress 注册表单添加验证图片
function add_security_question() {
?>
<p>
<?php
require_once(\”class.geetest.php\”);
$geetest = new Geetest();
$geetest->set_captchaid(\”此处改成极验验证申请到的ID\”);
if ($geetest->register()) {
echo $geetest->get_widget(\”float\”);//若采用弹出式,要添加第二个参数(提交按钮的id)
} else {
echo \”use your own captcha HTML web code!\”;//这里输出网站原有验证码
}
?>
</p>
<br />
<br />
<?php
}
add_action( \’register_form\’, \’add_security_question\’ );

//检验输入的验证码是否正确
function add_security_question_validate( $sanitized_user_login, $user_email, $errors) {
require_once(\”class.geetest.php\”);
$geetest = new Geetest();
$geetest->set_privatekey(\”此处改成极验验证申请到的KEY\”);

if (isset($_POST[\’geetest_challenge\’]) && isset($_POST[\’geetest_validate\’]) && isset($_POST[\’geetest_seccode\’])) {
$result = $geetest->validate($_POST[\’geetest_challenge\’], $_POST[\’geetest_validate\’], $_POST[\’geetest_seccode\’]);
if ($result == TRUE) {
echo \’Yes!\’;
} else if ($result == FALSE) {
return $errors->add( \’prooffail\’, \'<strong>错误</strong>: 请将拼图滑倒正确位置。\’  );
} else {
echo \’FORBIDDEN\’;
}
} else {
echo \”use your own captcha validate \”;
//网站原有验证码的验证
//$result = your_own_captcha_validate()
}
}
add_action( \’register_post\’, \’add_security_question_validate\’, 10, 3 );

将ID和KEY修改成我们自己的,这里参考的是这里(http://www.luoxiao123.cn/1342-2.html)文章。

但是,又遇到麻烦了,替换文件之后还是看不到验证码,搞不懂什么问题。

总结,根据网友的使用文档,以及Geetest的介绍,如果使用这个结合WordPress验证过滤用户,效率和准确度很高,但是国外主机优惠两个方法都没有安装成功,只能以后找时间再测试吧。