PS 1.7: добавить пароль клиента в письмо отправляемое при восстановлении пароля
В Prestashop 1.7 восстановление пароля пользователя происходит по ссылке, высылаемой в письме на зарегистрированный email. После перехода по ссылке клиенту должен ввести новый пароль и его подтверждение. После этого на зарегистрированный email приходит письмо с темой «Ваш новый пароль», но новый пароль это письмо не содержит.
Это прежде всего нелогично, а кроме того опыт показывает, что пользователь, забывший пароль один раз, как правило забывает его снова, особенно, если не посещает интернет-магазин достаточно долго. В этой ситуации разумней было бы все же выслать новый пароль на email, чтобы клиент смог найти его в своем почтовом ящике с помощью поиска, а не возился с процедурой восстановления пароля всякий раз при следующем посещении сайта.
Для этого прежде всего нужно сделать правки в контроллере отвечающем за восстановления пароля клиента, а именно в controllers/front/PasswordController.php
В этом файле находим код, отвечающий за отправку письма с новым паролем:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
$mail_params = [ '{email}' => $customer->email, '{lastname}' => $customer->lastname, '{firstname}' => $customer->firstname, ]; if ( Mail::Send( $this->context->language->id, 'password', $this->trans( 'Your new password', array(), 'Emails.Subject' ), $mail_params, $customer->email, $customer->firstname . ' ' . $customer->lastname ) ) |
И добавляем переменную passwd с новым паролем в массив $mail_params, который содержит параметры, передаваемые в шаблон письма:
|
1 2 3 4 5 6 |
$mail_params = [ '{email}' => $customer->email, '{lastname}' => $customer->lastname, '{firstname}' => $customer->firstname, '{passwd}' => $password, ]; |
Теперь только остается добавить эту переменную к шаблону письма password.html, который как правило находится по адресу /mail/<язык фронт офиса>/ или themes/<имя активного шаблона>/mail/<язык фронт офиса>/
Было:
|
1 2 3 4 5 6 7 |
<font size="2" face="Open-sans, sans-serif" color="#555454"> <p data-html-only="1" style="border-bottom:1px solid #D6D4D4;margin:3px 0 7px;text-transform:uppercase;font-weight:500;font-size:18px;padding-bottom:10px"> Ваши новые данные для входа в {shop_name} </p> <span style="color:#777"> <span style="color:#333"><strong>Адрес электронной почты:</strong></span> {email} </span> </font> |
Стало:
|
1 2 3 4 5 6 7 8 9 10 |
<font size="2" face="Open-sans, sans-serif" color="#555454"> <p data-html-only="1" style="border-bottom:1px solid #D6D4D4;margin:3px 0 7px;text-transform:uppercase;font-weight:500;font-size:18px;padding-bottom:10px"> Ваши новые данные для входа в {shop_name} </p> <span style="color:#777"> <span style="color:#333"><strong>Адрес электронной почты:</strong></span> {email} </span><br /> <span style="color:#777"> <span style="color:#333"><strong>Новый пароль:</strong></span> {passwd} </span> </font> |

Добавить комментарий