Перейти к содержанию
mimme

Изменения шаблона письма клиенту при изменении статуса

Рекомендуемые сообщения

Приветствую!

Не подскажите, есть ли какие-то готовые решения для изменения шаблона письма об изменении статуса.

Или подскажите, где эти письма формируются в коде.

Хочу добавить таблицу с заказом в письмо при смене статуса.

Гуглятся хелпы (и модули) для второй версии, но в трёшке, видно, что-то поменялось и не очень понятно как оно работает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Колоночка справа с версиями опенкарта говорит, что сие для второй версии, не для третьей.

Или оно работает, но все это скрывают?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Нашёл.
Контроллер который за это отвечает catalog/controller/mail/order.php функция edit.
Соответственно, шаблон живёт в catalog/view/theme/<THEMENAME>/template/mail/order_edit.twig.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Чтобы поменять письмо, я закомментил дефолтную функцию edit и сделал свою.

Ключевые моменты - это докидывание данных в $data и создание нового twig шаблона.

Мне надо было, чтобы в письмах была таблица с заказом, так что надо передать в шаблон языковые строки:

$language->load('mail/order_add');

И данные по товарам в заказе (копируется из функции выше):

$order_products = $this->model_checkout_order->getOrderProducts($order_info['order_id']);
// Products
		$data['products'] = array();
		foreach ($order_products as $order_product) {
...
		}

Создаём копию catalog/view/theme/<MYTHEME>/template/mail/order_add.twig с новым названием, например catalog/view/theme/<MYTHEME>/template/mail/order_status_change.twig

И меняем в новой функции edit строку $mail->setText($this->load->view('mail/order_edit', $data)); на $mail->setHtml($this->load->view('mail/order_status_change', $data));

Это надо, чтобы письмо было не plain text, а красивенький-гламурненький HTML.

Смотрим переменные в /catalog/view/theme/myshop/template/mail/order_edit.twig или в функции edit переменной $data и правим новый шаблон order_status_change.

Мне надо было только таблицу с товарами, так что я копировал только про товары. Если надо ещё что-то, то в шаблон надо передать данные.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
В 10 октября 2018 г. в 12:50, mimme сказал:

Колоночка справа с версиями опенкарта говорит, что сие для второй версии, не для третьей.

Или оно работает, но все это скрывают?

Правильно колоночка справа говорит. 3.x данный модуль на сегодняшний день не поддерживает. Но скоро будет версия под "трешку".

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.