Если не отправляется сообщение из формы контактов в Opencart 3
Судя по всему, не работает только с SMTP Яндекса. Нужно в контроллере в адресе отправителя указать переменную, которая содержит почту магазина из настроек SMTP. Она должна быть на своем домене (например, info@site.ru).
Инструкция
В файле /catalog/controller/information/contact.php
заменить
$mail->setFrom($this->request->post['email']);
на
$mail->setFrom($this->config->get('config_mail_smtp_username'));
потом заменить
$mail->setSender(html_entity_decode($this->request->post['name'], ENT_QUOTES, 'UTF-8'));
на
$mail->setSender($this->config->get('config_name'));
И, чтобы в письме приходил адрес пользователя, заменить этот код:
$mail->setText($this->request->post['enquiry']);
на
$mail->setHTML($this->request->post['enquiry'] . '<br><br>' . $this->request->post['email'] );
Письмо будет приходить с основной почты сайта на неё же, поэтому нельзя будет ответить человеку, нажав кнопку «Ответить». Нужно будет копировать пришедший в тексте письма адрес почты и создавать новое письмо.
Добавить комментарий