用户注册-检查邮件是否存在于外部api



是否有一种方法可以验证在注册表单(最终成员)中输入的电子邮件,并且在注册或编写电子邮件时,一个函数向带有电子邮件的API发出请求并验证它是否存在,如果它存在则允许您注册,但如果它不存在则无法注册?

非常感谢您的支持。

使用此过滤器获取认证后的用户电子邮件:

add_filter('wp_authenticate_user','func_auth_signon',10,2);
function func_auth_signon($user, $password) {
if ( is_a( $user, 'WP_User' ) {
$email = $user->user_email;
//check if email exist in API
if(!is_email_exist($email))
//else logout user
wp_logout();
}
return $user;
}

检查api中是否存在用户邮箱

function is_email_exist($email){
$url = 'YOUR API URL'
$ch = curl_init($url);
// Set the result output to be a string.
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$data = curl_exec($ch);
if(curl_error($ch)) {
return false;
}
curl_close($ch);
if($data) return true;
return false;
}

相关内容

  • 没有找到相关文章

最新更新