Всё о web

Для чайников и не только


Обратная связь Opencart, email отправителя

Март 23, 2016

При отправке заявки через форму обратной связи клиент указывает свой email. Затем, если нужно, можно с ним связаться, используя этот адрес. Но на одном из сайтов возникла проблема: уведомление об обращении на почту прилетает без клиентского email'а.

Проблема оказалась всего в одной строчке кода:

$mail->setFrom($this->request->post['email']);

Opencart пытается отправить email от имени клиента. Но настройки хостинга запрещают подмену адреса отправителя, более того, адрес вида somelogin@anyHosting.ru автоматически выдаётся при регистрации и сменить его нельзя.

Чтобы это поправить, открываем: /catalog/controller/information/contact.php и находим строку:

$mail->setText($this->request->post['enquiry']);

Заменяем её на:

$text = "Email клиента: ".$this->request->post['email']."\n\n".$this->request->post['enquiry'];
$mail->setText($text);

После этого адрес будет всегда указываться в теле письма.



Комментарии

2 комментариев | “Обратная связь Opencart, email отправителя

  1. Аватар Кумыс:

    Спасибо! Очень выручили!

Оставить комментарий:

Ваш e-mail не будет опубликован. Обязательные поля помечены *