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

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

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

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

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

注册Geetest极验验证账户

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

第二、Geetest新增网站获取ID

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

Geetest新增网站获取ID

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

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

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

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

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

WordPress插件模式实现验证

根据界面提示,我们填写公钥、验证私钥,以及评论设置适用于评论、登入,还是注册网站时候。分别填写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验证过滤用户,效率和准确度很高,但是老蒋两个方法都没有安装成功,只能以后找时间再测试吧。

本文出处:老蒋部落 » WordPress结合Geetest极验验证实现帅气的注册评论验证方式 | 欢迎分享( 公众号:QQ69377078 )