Contact Form 7 表单插件被认为是WordPress最受欢迎也最易于使用的表单创建和扩展插件,被无数的WordPress建站用户广泛使用并获得非常好的口碑评价。Contact Form 7 表单插件是一款非常简单易用且扩展性灵活的表单管理插件,用户可以自定义各式各样不同类型的表单功能,而且支持自定义接受邮件通知,Ajax提交和 jQuery表单插件扩展等特色需求。还可以结合WordPress官方垃圾评论插件 – Akismet,来过滤垃圾邮件。
在WordPress外贸建站过程中,有用户反馈提交 Contact Form 7 插件创建的表单时,会出现“There was an error trying to send your message. Please try again later.”的错误提示。如下图所示:
通过WPPOP开发人员对 Contact Form 7 插件的功能分析,导致提交表单数据时出现 出现“There was an error trying to send your message. Please try again later.”的错误提示的原因主要有以下两种:
1. 网站使用的主机(服务器)环境不支持邮件发送功能
网站使用的主机(服务器)环境因为没有配置Mail服务器组件,不支持邮件发送功能,而导致出现 “There was an error trying to send your message. Please try again later.”错误的情况是最常见的原因。主要因素如下:
- 主机(服务器)环境中没有正确配置PHP环境中的Mail()组件,WordPress系统无法使用wp_mail()发送电子邮件;
- 较旧的 WordPress / PHP 版本。
检查网站使用的主机(服务器)环境是否支持邮件发送功能,可以直接联系你的主机服务商;或者通过PHP探针工具来测试。也可以退出网站管理员,在找回密码页面(路径:https://你的域名/wp-login.php?action=lostpassword),输入你的网站管理员邮箱,来测试网站是否支持邮件发送功能。如果不支持,会出现下图所示错误提示:
Error: The email could not be sent. Your site may not be correctly configured to send emails.
错误:邮件未能发送。您的主机可能未获正确配置。
如果确定是因为导致的,可以通过WordPress SMTP插件(比如:WordPress网站邮件收发插件 – Easy WP SMTP),使用第三方的SMTP服务器(比如QQ、163)配置,来实现网站中的邮件发送功能。
2. 联系表单中设置的收件人邮箱问题
在创建 Contact Form 7 联系表单时,在 邮箱 切换标签中的 收件人 设置项对应的邮箱,如果是使用了QQ、163邮箱,则可能是因为这些国内邮件服务商屏蔽了来自国外服务器IP的邮件导致发送失败的。基于某些安全原因,国内邮件服务商(比如 QQ、163邮箱 等)可能会屏蔽一些来自国外服务器IP发送来的邮件。
所以,如果你确定网站所在主机(服务器)环境支持邮件发送功能的话,可以尝试修改联系表单中的收件人邮箱(比如:Gmail、Hotmail、或者域名邮箱等)来解决问题。
3. https:// 和 http:// 混合导致问题
如果你在安装WordPress时,使用的是旧的 http:// 方式搭建网站的,后面又改成了 https:// 的话,请记得检查网站中是否还有旧的 http:// 前缀链接地址的内容;如果有,请务必都替换为 https:// 前缀链接地址。
这种情况是因为 https:// 和 http:// 混合,导致表单提交时,无法正确响应,也可能会使得 Contact Form 7 插件出现 “There was an error trying to send your message. Please try again later.” 错误。
可以检查网站后台的 【 设置 – 常规 】 中的 WordPress地址(URL) 和 站点地址(URL)2项是否为 https:// 前缀。如下图所示:
结论
如果您是 WordPress 外贸建站新手,Contact Form 7 表单插件的这种错误并不容易理解和解决,它不仅与 WordPress 系统相关,还与网站所在的主机(服务器)配置有关。
希望本教程能帮助您解决这个问题。如果您仍然遇到错误,可以联系我们有偿处理,我们会尽力帮助您。