联系表格 7 补充问题。 常见问题解答和修复。

已发表: 2021-06-20

披露:这篇文章包含附属链接。 当您单击此帖子中的产品链接时,我可能会收到补偿。 有关我的广告政策的说明,请访问此页面 谢谢阅读!

内容

  • 为什么 Contact Form 7 有补充功能?
  • Contact Form 7 的补充功能存在哪些主要问题?
  • 联系表格 7 的补充功能实际上会导致网站宕机。
  • 如何修复在重新填写请求中显示 404 的联系表 7。
  • WP Super Cache/Contact Form 7 冲突。
  • 如何加快联系表格 7
  • 如何修复可能的联系表 7 反馈 403 错误。
  • W3 Total Cache/Contact Form 7 冲突。
  • 获取“加载资源失败:服务器响应状态为 403 ()”
  • 联系表格 7 补充问题,最后的想法。

为什么 Contact Form 7 有补充功能?

Contact Form 7 refill 功能的创建是为了使表单更能响应用户的输入,而无需不断地向您的服务器发出请求以检索每个请求。

你看,缓存页面总是显示静态内容。

因此,当验证码脚本检测到页面被缓存时,它会被发送到服务器。 然后,服务器用一个全新的测验、一个全新的扭曲图像进行验证等来回答请求。

仅当您使用某种类型的页面缓存功能时,才会加载重新填充功能。

重新填充的目的是防止在使用页面缓存时与现有插件及其自己的缓存功能发生冲突。

这就是联系表 7 的工作方式。 因此,您可以一起使用专用缓存插件和 Contact Form 7 中内置的验证码。

在这篇文章中,我将讨论人们在使用 Contact Form 7 补充功能时遇到的最常见问题,以及可能的修复和解决方案。

Contact Form 7 的补充功能存在哪些主要问题?

Contact Form 7 的补充功能有时会出现问题,前 3 个原因是:

  1. 您的联系表格 7 中的缓存功能已关闭,或者您的缓存插件已关闭。
  2. 缓存插件冲突。
  3. 插件冲突。

您会发现 90% 的联系表 7 重新填写问题源于这 3 个原因中的一个或多个。

联系表格 7 的补充功能实际上会导致网站宕机。

如果您没有使用 Contact Form 7 上的验证码功能,但您正在缓存您的页面,这可能会导致网站关闭。

这是因为验证码请求将在每次页面加载时加载多次。

这可能会使您的服务器超载,从而导致站点中断或更糟。

例如,如果您的网站因网站服务器上的高请求而出现故障,例如:/wp-json/contact-form-7/v1/contact-forms/10370/refill。

如果是这种情况,您应该尝试切换到默认主题。 然后停用除 Contact Form 7、Classic Editor 和 WP Mail SMTP 之外的所有插件,并清除缓存。

然后一一重新激活你的插件,看看有没有冲突。 然后是主题。 当您发现冲突时,请联系主题或插件的开发人员支持并从那里获取。

事实上,Contact Form 7 重新填写问题的第一个解决方案基本上是寻找冲突。

停用所有插件,切换到默认主题,然后一一重新激活它们,直到发现冲突。

实际上,许多 WordPress 问题都可以通过这种方式解决。

另一个例子是,如果您使用 Gtmetrix 并看到此文件:/wp-json/contact-form-7/v1/contact-forms/13891/refill,会导致页面加载速度变慢。

您可以通过使用“插件逻辑”来解决这个问题,并且只在您需要它们的页面上加载插件,例如联系表格 7,并且只在您有表单的页面上加载。

“Plugin Logic”已经有一段时间没有更新了,所以请阅读最新评论并谨慎行事。 但是,如果它仍然有效,那为什么不呢? 尤其是如果您像我一样是非编码员。

此外,它确实加快了加载时间。

如何修复在重新填写请求中显示 404 的联系表 7。

有时在验证表单时,Contact Form 7 可能会显示旋转箭头图标永不停止。

该错误可能会显示在您的 Chrome 开发者控制台中,如下所示:jquery.js?ver=1.12.4:4 POST http://XXX/wp-json/contact-form-7/v1/contact-forms/158/feedback 401(未经授权)

如果您在全球范围内停用联系表格 7,则需要创建一个插件过滤器,其中 http://XXX/wp-json/contact-form-7/v1/contact-forms/ 作为永久链接并选择“也影响儿童” .

但是您还需要在插件管理器设置页面上启用模糊 URL 匹配。

因此,全局禁用 Contact Form 7。然后创建一个启用 Contact Form 7 的插件过滤器,并将永久链接设置为:

http://www.mydomain.com/wp-json/contact-form-7/v1/contact-forms/。 不要忘记选中“影响孩子”复选框。

WP Super Cache/Contact Form 7 冲突。

如果您安装了 WP Super Cache,您应该尝试在特定页面或站点范围内清除缓存。

有时缓存插件会缓存此插件中包含的旧版本的 recaptcha-controls 脚本。

因此,缓存清除似乎是首选解决方案。

但是,如果您发现这不起作用,请尝试联系 WP Super Cache,看看是否有办法将 wpcf7-recaptcha-controls 脚本排除到缓存排除列表中。

如何加快联系表格 7

如果您发现 Contact Form 7 正在减慢您的网站速度,您也可以试试这个插件Speed up Contact Form 7

正如插件所说,它使 Contact Form 7、reCaptcha 和附加组件仅在有短代码时才加载。

这减少了未使用的 CSS 和 JavaScript 的数量,并使 PageSpeed 更快乐(更快)。

如何修复可能的联系表 7 反馈 403 错误。

“403 Forbidden Access to this resource on the server is denied!” WordPress 允许开发人员访问 JSON API。 Contact Form 7 使用它来尝试为您的表单获取一些设置。

服务器可能会向任何未登录的用户提供“403 禁止错误”。但是,对于管理员用户,它可以正常工作。

如果您遇到这种情况,请立即怀疑问题与插件有关。

对你来说,它可能是你的缓存插件,顺便说一下,如果管理员登录,它会自行禁用。

简单地说,尝试另一个缓存插件或刷新你拥有的缓存。 问题解决了! 希望…

W3 Total Cache/Contact Form 7 冲突。

如果您已将 Contact Form 7 更新到其最新版本并且发送按钮被阻止,不再发送电子邮件或旋转到无穷大,您可能会遇到最小化冲突。

在某些条件和托管服务器的设置下,Contact Form 7 似乎有时不喜欢缩小。

这是一个可能的解决方案。 尝试以下操作:

转到性能 -> 缩小 -> 从不缩小以下页面:并手动添加您拥有联系表的页面,没有 http:// 或/和 www。

例如,如果页面是“联系人”,则添加 /contact/

这个解决方案可能不是通用的,但它可能会奏效。

获取“加载资源失败:服务器响应状态为 403 ()”

“加载资源失败:服务器响应状态为 403 ()”

其中许多问题可能再次与缓存有关。 尝试安装“健康检查和故障排除”插件并按照他们的文档来缩小任何插件冲突。

最后一点:联系表格 7 补充问题,最后的想法。

如您所见,对于最常见的 Contact Form 7 补充问题,有一个潜在的线索。

存在插件冲突、缓存冲突或设置未正确配置。

如果您首先关注这些领域以及我在上面给出的一些可能的修复,您应该能够处理所有 Contact Form 7 重新填写问题的 90%。

如果没有,您可以随时访问WordPress.org中的Contact Form 7s Support 页面并提交支持请求。