Prestashop: "Произошла ошибка при отправке сообщения".
Я использую PrestaShop 1.7 с темой по умолчанию. У меня также установлен модуль контактной формы.
Но когда я пытаюсь отправить сообщение со страницы "Связаться с нами", используя контактную форму, созданную модулем контактной формы.
Выдает ошибку ниже:
Произошла ошибка при отправке сообщения, пожалуйста, попробуйте еще раз.
Как я могу это исправить?
4 ответа
Я только что понял проблему.
На самом деле, я пытался обновить свой магазин до 1.7.3.1, когда уведомление впервые появилось. Затем каким-то образом установка пошла не так, но модуль, который я использовал, был 1-Click Upgrade, говорил что-то вроде "не волнуйтесь, мы вернемся к той версии, которую вы использовали раньше".
Ну, они не сделали! И я не думал, что это может быть проблемой на первых порах.
Затем я начал думать о том, какой файл или файлы могли быть изменены. Используя онлайн-инструмент для сравнения файлов, я увидел, что файл contactform.php в /modules/contactform отличается от того, который я использовал ранее.
После замены этого файла на старый проблема была решена!
Если этот файл не подходит для вас, я рекомендую вам попробовать другие файлы, если вы попытались обновить версию до более новой и потерпели неудачу в процессе, как и я.
Надеюсь, что это помогает людям, имеющим ту же проблему, не думая о таких днях, как я.
Проблема в том, что я думаю, что в папке lang нет выхода
Вы можете изменить строку 418 $this->context->controller->errors[] = $this->trans('Произошла ошибка при отправке сообщения, пожалуйста, попробуйте снова.', array(), 'Modules.Contactform.Shop ");
$this->context->controller->errors[] = $errorMessage = error_get_last()['message'];
Таким образом, вы легко сможете увидеть полный отчет об ошибке.
для меня ошибка.lang/ папка не выходит
Желаемое решение поможет вам мало.
Я думаю, что проблема в том, что у вас не работает должным образом почтовый сервер, но после отправки каждой контактной формы на адрес электронной почты администратора отправляется сообщение электронной почты (по умолчанию). Чтобы избежать этой проблемы, вы можете правильно настроить свой почтовый сервер (на вашем сервере, а затем в панели администратора prestashop) или просто отключить опцию в Расширенные параметры -> Электронная почта -> Никогда не отправлять электронную почту(в этом случае администратор выиграл ' получить сообщение на свой e-mail только для админки). Также здесь вы можете проверить, правильно ли работает ваш почтовый сервер, отправив тестовое электронное письмо на ваш собственный адрес через последнюю форму. Проверьте свою конфигурацию электронной почты. Надеюсь, мои предложения помогут вам.
Во-первых, чтобы правильно настроить функцию электронной почты. Обычно люди используют функцию почты PHP для отправки электронной почты, но это не очень хорошая идея - иногда эта функция была отключена хостинг-провайдером, и ваши электронные письма доставлялись в нежелательную почту вместо папки "Входящие".
Войдите в админ панель -> Нажмите на РАСШИРЕННЫЕ ПАРАМЕТРЫ, а затем на вкладку "Email".
Затем вы можете выбрать функцию PHP Mail или SMTP-сервер для отправки электронной почты.
Я написал статью о настройке SMTP в Prestashop. Надеюсь это поможет.