WordPress中使用Contact Form 7获取reCAPTCHA v3分数的方法
在WordPress中从Contact Form 7的WPCF7_Submission对象提取reCAPTCHA v3分数
由于WPCF7_Submission对象中的pocket是受保护属性,无法直接访问,需使用类提供的公共方法get_meta()来提取reCAPTCHA相关数据,进而获取分数:
$submission = WPCF7_Submission::get_instance(); if ($submission) { // 获取reCAPTCHA的完整数据 $recaptcha_data = $submission->get_meta('recaptcha'); // 检查分数是否存在并提取 if (isset($recaptcha_data['response']['score'])) { $recaptcha_score = $recaptcha_data['response']['score']; // 此处可根据需求使用分数,比如做验证逻辑、记录日志等 } }
关键说明
get_meta('recaptcha')会直接返回你提供的对象中pocket['recaptcha']对应的数组- 务必先判断
$submission是否存在,避免空对象报错 - 额外判断
score键是否存在,可兼容异常提交场景
内容的提问来源于stack exchange,提问作者BhAvik Gajjar
相关产品推荐
相关产品推荐

