ReCAPTCHA v3 在 Shopify 联系表单中不起作用,我该如何解决?

ReCAPTCHA v3 is not working in a Shopify Contact form, how can I solve it?

昨天我在我的一个客户的 Shopify 网站中添加了 Google ReCAPTCHA v3,但我认为它没有用,因为他仍然报告说收到了几封垃圾邮件。

我已按照 Google 的指南进行操作,但我不知道如何完成指南的 "Verifying user response" 部分。我不是编码专家。

基本上我已经将此代码添加到 theme.liquid 文件

<script src="https://www.google.com/recaptcha/api.js?render=*site key provided by google*"></script>

然后我在 page.contact.liquid 文件中添加了这一部分:

<script> grecaptcha.ready(function() {
  grecaptcha.execute('*site key provided by google*', {action: 'contact'}).then(function(token) {
     ...
  }); }); </script>

我是不是漏掉了什么?有人可以帮我解决这个问题吗?

试试这个。

https://community.shopify.com/c/Shopify-Design/Adding-Google-reCaptcha-v3-to-the-Shopify-contact-form/td-p/467787

如果您不熟悉编辑代码,最好的解决方案是从 shopify 应用商店添加一个应用。

不幸的是,任何在原生 Shopify 联系表单上实施 reCaptcha 的尝试都不会奏效。它可能看起来有效,就像在表单提交中一样,您会在 reCaptcha 管理员中看到统计信息,但它实际上不会阻止任何垃圾邮件。原因是您只能在您的主题中实现客户端部分,并且为了工作,您必须同时拥有客户端和服务器端部分并正常工作。服务器端部分用于检测失败的验证码(即垃圾邮件机器人)并阻止提交表单。

仅实施客户端部分可能会阻止一些最简单的垃圾邮件机器人,它们只会看到验证码并停止,但设计一个机器人来绕过客户端部分是微不足道的:这就是为什么服务器端一块是必不可少的。

还在 Chami 链接的 Shopify 论坛帖子上发布了这个答案,因为那里的人绕圈子认为这是可能的,或者认为它有效但实际上无效。

更新: 自最初发布此回复以来,Shopify 已将 reCaptcha 支持直接内置到平台中,并且默认情况下处于启用状态。完成后,无需在主题中实现前端代码,因为它将自动包含在内: https://help.shopify.com/en/manual/online-store/os/preferences#protect-your-store-with-google-recaptcha

根据此页面 (http://blog.ivertech.com/blog/why-google-recaptcha-v2-or-v3-does-not-work-on-shopify-contact-form),Google reCaptcha v3 实际上无法在 Shopify 上实施。

由于 Shopify 已经默认实现了 Google reCaptcha v2,因此您真的没有必要实现 v3。一些来自 Shopify 论坛的用户声称他们能够成功实施 reCaptcha v3 是错误的。他们实际上看到了 Shopify 默认实施的 reCaptcha v2 的效果。

可以从上面的 link 中找到更多详细信息。