首页 文章

无法添加第二个reCAPTCHA . 请联系表格7 w / reCAPTCHA

提问于
浏览
1

我有一个Wordpress网站,它使用Contact Form 7插件和随附的reCAPTCHA功能,效果很好 . 我把这部分放到位,一切都是自动的 . 但是现在我正在尝试将reCAPTCHA添加到另一个未使用Contact Form 7设置的表单(在页面form1.php上) . 这是在一个基本上包含Wordpress页眉和页脚的PHP页面上,但是它自己做了在中间的事情 . 一个关键点是页脚包含联系表单7中的一个表单,因此它位于网站的每个页面上 .

我跟着Google's instructions,忘了我有页脚形式 . 然后我在Firebug中看到一个错误 Error: ReCAPTCHA placeholder element must be empty

这让我想到了this StackOverflow topic here . 用户随和的唯一答案是,当他们意识到他们已经两次导入库时,他们遇到了同样的错误 .

好吧,这也是我所做的,我意识到了 . 所以,我可以在我的代码中删除https://www.google.com/recaptcha/api.js的脚本,因为它改变了,因为Contact Form 7将其放入,我可以't make a callback function of the same name since it'已经使用过 . 当然,我不知道如何让它在form1.php中调用我的回调函数,这是指定我的HTML元素来呈现验证码的地方 .

你有没有看到这个问题?任何帮助是极大的赞赏!

1 回答

  • 0

    这是决议:

    • 联系表格7支持多个reCaptcha,只需要正确的HTML标记即可使用它 .

    • 正如您在wp-content \ plugins \ contact-form-7 \ modules \ recaptcha.php以及HTML中看到的那样,诀窍是:

    • 你的非CF7 reCaptcha必须只是在一个表单元素中,如下所示:

    var verifyCallbackY = function(response) {
        /** your stuff... */
        alert(response);
    };
    
    <form id="recaptcha-cf7-migr"> <!-- the form element is important! This is what CF7 fetch one by one to find recaptchas... -->
        <div
            id='yRecaptcha'
            class="wpcf7-form-control g-recaptcha wpcf7-recaptcha captcha-hfs"
            data-sitekey="*********************************qkuila"
            data-callback="verifyCallbackY"></div>
    </form>
    

相关问题