如何修复 reCAPTCHA 在 WordPress 中不起作用

已发表: 2023-03-07

您的 reCAPTCHA 是否无法在您的 WordPress 网站上运行?

reCAPTCHA 是 Google 提供的一项免费服务,可帮助保护网站免受垃圾邮件的侵害,许多 WordPress 用户喜欢使用它。 reCAPTCHA 是您网站上的一项有用功能,尤其是在通过使用表单邀请交流时。

因此,当 reCAPTCHA 无法在您的网站上运行时,这可能会非常令人沮丧。

在您的 WordPress 网站上遇到 reCAPTCHA 问题的常见原因有很多,我们可以帮助您解决这些问题。

立即将 reCAPTCHA 添加到您的 WordPress 表单

为什么我的 reCAPTCHA 在 WordPress 中不起作用?

通常,reCAPTCHA 的问题是由于它在您网站设置中的配置方式而引起的。

WPForms 是最好的 WordPress 表单生成器插件。 免费获取!

插件选项、主题功能和其他站点设置都会影响 reCAPTCHA 在您的 WordPress 站点上的运行方式。 例如,您的 WPForms 插件设置会影响此保护如何应用于您网站上提交的表单。 幸运的是,通过对这些设置进行一些调查可以解决 reCAPTCHA 问题。

在本文中,我们将介绍您在使用 reCAPTCHA 时可能遇到的常见问题,以及如何解决这些问题。 此外,作为奖励,我们将提供一些替代方法来保护您的网站,因此您根本不必使用 reCAPTCHA。

如何修复 reCAPTCHA 在 WordPress 中不起作用

在本文中

  • 1.无法启用reCAPTCHA
  • 2.无效的站点密钥
  • 3.谷歌reCAPTCHA验证失败
  • 4. “This field is required”错误信息
  • 5. reCAPTCHA 并没有减少垃圾邮件
  • reCAPTCHA 的替代品

1.无法启用reCAPTCHA

将字段拖放到您在 WPForms 中构建的表单时,您可能会发现无法添加或启用 reCAPTCHA 字段。

此问题通常是由于表单生成器设置中的 reCAPTCHA 密钥问题引起的,这是您首先要解决此问题的地方。

在您的 WPForms 设置中,您需要确保已正确输入您的 reCAPTCHA 密钥。

如果您的设置中没有正确的 reCAPTCHA 密钥,reCAPTCHA 字段在表单构建器的可用字段中仍然可见,但如果您尝试使用它,您将收到一条警告消息。

Google reCAPTCHA configuration message

因此,前往WPForms » 设置 » CAPTCHA检查您的 reCAPTCHA 密钥是否已正确添加到 reCAPTCHA 密钥字段。

您可能会在这里发现您根本没有 reCAPTCHA 密钥。 因此,您需要从 Google 生成这些密钥。

如您所见,我们为此过程提供了分步教程,您可以从表单生成器上显示的消息中获取该教程。

生成密钥后,您可以将 reCAPTCHA 密钥应用于表单构建器的设置。

导航至WPForms » 设置 » 验证码以输入您的 reCAPTCHA 密钥。

Entering reCAPTCHA settings

然后,返回到表单生成器以添加 reCAPTCHA 字段并在您的表单上启用 reCAPTCHA。

在 WPForms 设置中添加并启用 reCAPTCHA 密钥后,您应该能够毫无问题地将 reCAPTCHA 字段添加到表单中。

2.无效的站点密钥

您的 reCAPTCHA 在 WordPress 中不工作的另一个原因可能是由于无效的站点密钥。

如果您在尝试将 reCAPTCHA 添加到表单时收到一条消息,内容为“站点所有者错误:站点密钥无效”,那么您就会知道是这种情况。

这意味着,如错误消息所示,添加到WPForms » Settings » CAPTCHA 的reCAPTCHA 密钥无效。 可能密钥被错误地复制到您的 WPForms 设置,或者它们被意外地从您的 Google reCAPTCHA 帐户中删除。

因此,您需要仔细检查您从 Google 获得的 reCAPTCHA 密钥,并确保它们与您应用到 WPForms 设置的密钥相匹配。

Entering site key in settings

要修复您的无效站点密钥,您可能只需要在 Google 站点上重新生成 Google reCAPTCHA 密钥。

如果您在 Google 中重新生成您的 reCAPTCHA 密钥,请务必在您的 WPForms 设置中添加新密钥。 返回WPForms » 设置 » 验证码以添加并启用您重新生成的密钥。

3.谷歌reCAPTCHA验证失败

无法验证 reCAPTCHA 是您在使用 WordPress 时可能会遇到的另一个常见问题,发生这种情况的原因有很多。

Configuring reCAPTCHA

如果发生这种情况,您将收到一条消息,内容为“Google reCAPTCHA 验证失败,请稍后重试。” 在提交表单后,此错误消息将出现在 reCAPTCHA 字段之后

要解决此问题,请通过重复上面问题 #2 中描述的步骤来检查它是否与不正确的 reCAPTCHA 密钥有关。

您的站点密钥可能有误,或者它们在您的 Google reCAPTCHA 帐户中的配置可能不正确。 如果是这样,您应该简单地生成一组新的 reCAPTCHA 密钥。

如果使用您的站点密钥仍无法成功提交表单,请检查您的优化插件,例如 WP Rocket、Autoptimize 等。您可能需要更改这些插件中的一些设置以解决您的 reCAPTCHA 问题。

在您的优化插件中,暂时禁用 Javascript 优化设置。 然后,保存这些设置并清除缓存以查看它是否解决了 reCAPTCHA 问题。

4. “This field is required”错误信息

reCAPTCHA 时您可能会遇到的另一条错误消息是“This field is required”,并出现在 reCAPTCHA 字段之后。

通常,此错误是由与另一个 reCAPTCHA 代码冲突引起的。 您可能有多个已由其他插件或您网站的主题加载的 reCAPTCHA。

要查看是否属于这种情况,请尝试检查表单生成器中的控制台错误。

只需右键单击屏幕或单击右上角的三个垂直点即可打开“检查”工具,然后选择“控制台”选项卡。

Checking for console errors

如果 reCAPTCHA 已加载两次,您将看到如下所示的控制台错误消息。

Console error message

如果您看到此消息,则需要在插件设置或主题选项中检查另一个 reCAPTCHA 选项。 尝试追踪其他 reCAPTCHA 代码。

有时,只需在 W3 Total 缓存插件的性能»常规设置»杂项下禁用“启用 Google Page Speed 仪表板小部件”选项即可解决此问题。

Enabling Google pagespeed dashboard widget

如果您找不到冲突的 reCAPTCHA 选项,请尝试在 WPForms 的 reCAPTCHA 设置中启用无冲突模式,看看是否可以解决问题。

Enabling no conflict mode in the WPForms reCAPTCHA settings

5. reCAPTCHA 并没有减少垃圾邮件

有时,您的 reCAPTCHA 看起来好像没有任何问题,但它仍然没有降低您网站收到的垃圾邮件的水平。

在这种情况下,最简单的解决方案可能是增加您在 Google 中的 reCAPTCHA 的强度。 这是您会在 Google reCAPTCHA 帐户中执行的操作,而不是在 WordPress 中执行的操作。

再次前往您的 Google reCAPTCHA 设置以配置您的 reCAPTCHA 的类型和强度。

Editing reCAPTCHA settings

借助 Google 的 reCAPTCHA Enterprise,您可以使用 reCAPTCHA 创建各种项目和评估以获得更多自定义选项。

Editing reCAPTCHA project

另一件可以尝试的事情是在 Google 中使用 v3 或 Checkbox reCAPTCHA,因为不可见的 reCAPTCHA 是垃圾邮件发送者最容易绕过的保护类型。

Select reCAPTCHA v2

您也可以在您的 Google 帐户中增加这些 reCAPTCHA 类型的强度。

reCAPTCHA 的替代品

您可能最终决定完全放弃 reCAPTCHA 并寻求替代方法。 我们懂了!

幸运的是,还有一些其他方法可以保护您的网站。 WPForms 提供自己的垃圾邮件保护和安全设置,其中大部分都可以在设置»垃圾邮件保护和安全下的表单构建器中找到。

启用反垃圾邮件保护

WPForms 有一个内置的反垃圾邮件保护层,它验证 WPForms 插件添加到每个表单的令牌。

Enabling the WPForms anti-spam token

启用反垃圾邮件保护设置后,如果机器人触发反垃圾邮件保护,您的表单将不会被提交。

默认情况下应启用反垃圾邮件保护选项,但您可以在 WPForms垃圾邮件保护和安全设置中检查它。

启用 Akismet 反垃圾邮件保护

Akismet 是一个流行的 WordPress 网站垃圾邮件保护插件。 它通常用于过滤掉评论中的垃圾邮件,但也可以与 WPForms 集成以保护您的网站免受来自您的表单的垃圾邮件。

因此,您首先需要安装并激活 Akismet Spam Protection 插件以在 WPForms 中启用此反垃圾邮件保护。

安装插件后,Akismet 会将您重定向到它自己的设置页面。 从那里,您将按照设置帐户和添加 Akismet API 密钥的步骤进行操作。

然后,返回到表单生成器中的设置 » 垃圾邮件保护和安全并启用 Akismet 反垃圾邮件保护选项。

Enabling the Akismet anti-spam protection

添加其他验证码设置:hCaptcha、Cloudflare Turnstile 或自定义验证码

除了 reCAPTCHA 之外,您还可以在自己的网站上使用一些 CAPTCHA 选项。

例如,hCaptcha 是免费且注重隐私的,但仍提供可靠的反垃圾邮件保护。 或者您可以使用 Cloudflare Turnstile,这是另一种类似于验证码的解决方案。 它允许用户提交表单而无需解决难题。

要设置 hCaptcha 或 Cloudflare Turnstile,请转至WPForms » 设置 » CAPTCHA。 然后,选择您要使用的选项。

Entering CAPTCHA settings

在保存设置之前,您需要从每个帐户生成 API 密钥并将它们添加到此处。

此外,您可以通过使用WPForms Custom Captcha Addon创建自己的问答或数学验证码来防止垃圾邮件。

在将自定义验证码应用于您的表单之前,您需要激活自定义验证码插件。

导航到 WordPress 仪表板中的WPForms选项卡并选择Addons 。 向下滚动页面以查找并激活自定义验证码插件。

Activating custom captcha addon

然后,返回到表单生成器中的设置 » 垃圾邮件防护和安全性

“也可用”部分中,您会找到自定义验证码选项。 单击添加到表单以将自定义验证码添加到您的表单。

Adding custom CAPTCHA to a form

然后,您可以通过从下拉菜单中选择数学问答来选择向用户显示哪种类型的验证码。

添加垃圾邮件过滤器:国家/地区过滤器或关键字过滤器

使用国家/地区过滤器是允许或拒绝来自特定国家/地区的表单提交的一种简单而有效的方法。

要从表单生成器启用此功能,请前往设置 » 安全和垃圾邮件防护,然后打开启用国家过滤器选项。

Enabling country filter in settings

如果用户尝试从选定国家/地区之外提交表单,则表单将无法提交。 他们会收到这样的消息:“抱歉,此表格不接受来自您所在国家/地区的提交。”

您也可以将相同的过程应用于关键字。

要启用关键字过滤器,请将启用关键字过滤器选项切换到打开位置。 然后,将特定的单词和短语添加到关键字列表中。

Enabling keyword filter in settings

现在,当用户尝试使用列出的关键字之一提交表单时,表单将无法提交。 他们会收到一条消息,上面写着:“抱歉,您的消息无法提交,因为它包含违禁词。”

创建允许列表或拒绝列表

您还可以使用许可名单或拒绝名单来保护您的表单免受垃圾邮件的侵害。 此设置根据用户的电子邮件地址允许或拒绝表单用户。

Selecting an allowlist / denylist option

要创建许可名单或拒绝名单,请打开表单生成器并确保在您的表单中包含电子邮件字段。

在电子邮件字段的高级选项中,使用允许列表/拒绝列表下拉列表来启用您的列表并添加您的规则。

这只是 WPForms 提供的保护措施的简要总结。 有关如何将这些措施中的每一项应用于您的 WordPress 网站的完整说明,请查看此详尽的教程。

立即将 reCAPTCHA 添加到您的 WordPress 表单

接下来,停止联系表单垃圾邮件

在这篇文章中,我们介绍了很多保护 WordPress 表单的方法。 大多数垃圾邮件来自试图在您的网站上提交联系表格的机器人。

但是,您可以使用我们在本终极指南中介绍的技巧来防止垃圾邮件渗入您的网站。 您会找到与我们已在此处列出的一些选项相关的深入详细信息,以及保护您网站的其他建议。

准备好构建表单了吗? 今天开始使用最简单的 WordPress 表单生成器插件。 WPForms Pro 包含大量免费模板,并提供 14 天退款保证。

如果本文对您有所帮助,请在 Facebook 和 Twitter 上关注我们以获取更多免费的 WordPress 教程和指南。