Prestashop:“发送消息时发生错误。”

问题描述 投票:0回答:5

我正在使用 PrestaShop 1.7 及其默认主题。 我还安装了联系表单模块。

但是当我尝试使用联系表单模块创建的联系表单从“联系我们页面”发送消息时。

它抛出以下错误:

发送消息时出错,请重试。

An error occurred while sending the message, please try again.

我该如何解决这个问题?

prestashop smarty prestashop-1.7
5个回答
1
投票

我刚刚发现问题了。

实际上,当通知第一次弹出时,我试图将我的商店升级到1.7.3.1。然后不知何故安装出错了,但我正在使用的模块(即一键升级)说类似“别担心,我们会恢复到您之前使用的版本。”。

好吧,他们没有!我一开始并没有想到这可能是问题所在。

然后我开始思考哪些文件可能被更改。使用在线文件比较工具,我发现 /modules/contactform 中的 contactform.php 与我之前使用的不同。

将该文件更改为旧文件后,问题解决了!

如果该文件不适合您,如果您像我一样尝试将版本升级到新版本并在此过程中失败,我建议您尝试其他文件。

希望这可以帮助有同样问题的人,而不必像我一样整天思考。


0
投票

我认为问题在于您没有正常工作的电子邮件服务器,但在提交每个联系表单后,都会有一封电子邮件发送到管理员电子邮件地址(默认情况下)。为了避免这个问题,你可以正确设置你的电子邮件服务器(在你的服务器上,然后在你的 prestashop 管理面板中)或者只是关闭 高级参数 -> 电子邮件 -> 从不发送电子邮件中的选项(在这种情况下是管理员)不会收到他的电子邮件的消息,只会收到管理面板的消息)。此外,您还可以在这里通过最后一个表格测试您的电子邮件配置向您自己的地址发送测试电子邮件来测试您的电子邮件服务器是否正常工作。 希望我的建议对你有帮助。


0
投票

首先,确保设置电子邮件功能正确。通常,人们使用 PHP 邮件功能来发送电子邮件,但这不是一个好主意 - 有时,此功能已被托管提供商禁用,并且您的电子邮件会发送到垃圾邮件而不是收件箱。

登录管理面板 -> 单击“高级参数”,然后单击“电子邮件”选项卡。

然后您可以选择PHP Mail功能或SMTP服务器来发送电子邮件。

我写了一篇关于Prestashop SMTP 设置的文章。希望这有帮助。


0
投票

问题是我认为 lang 文件夹不存在

你可以换418号线 $this->context->controller->errors[] = $this->trans('发送消息时发生错误,请重试。', array(), 'Modules.Contactform.Shop');

到 $this->context->controller->errors[] = $errorMessage = error_get_last()['message'];

这样您就可以轻松查看完整的错误报告

对我来说错误是.lang/文件夹不退出

希望解决方案对您有一点帮助。


0
投票

我的 Gmail 出了什么问题,请厚脸皮 发送电子邮件时发生错误。如果问题仍然存在,请联系我们。

© www.soinside.com 2019 - 2024. All rights reserved.