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

[Решено] Имя клиента в письме о заказе

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

Доброго времени суток!

Подскажите, пожалуйста, как добавить в письмо о заказе имя клиента? Тема не новая, но пошарив немного в Гугле натыкнулся лишь на старые темы прошлых версий Opencart, где вообще такой функции не было. В кодах я довольно далёкий, поэтому не хотелось бы напортачить. Спасибо.

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


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

Вам для второй версии? Там кажется полный дубль письма приходит, как клиенту, со всеми данными.

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


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

Вам для второй версии? Там кажется полный дубль письма приходит, как клиенту, со всеми данными.

Да, для второй версии. Скажу честно, я уже проводил некоторые манипуляции с информацией в письме, но не помню в каком файле я всё это делал. Но насколько я помню, имя всё-таки не приходило (возможно я ошибаюсь). Я кажется удалил статус заказа и ip. Просто удобно сразу из письма перезвонить клиенту и понимать, как к нему обращаться. На данный момент, у меня вот такая ситуация:

c59dad97acfd.jpg

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


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

Если имя всё-таки было по умолчанию, подскажите хоть в каком файле, да я заменю его "родным".

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


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

Ниже этой таблицы должна идти таблица с данными покупателя (адрес оплаты и адрес доставки, где есть имя и фамилия).

Если она у вас вырезана, то посмотрите файл: catalog/view/theme/default/template/mail/order.tpl   строки 53-70

Имейте ввиду, что файл общий и для письма админу и для письма клиенту.

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


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

Ниже этой таблицы должна идти таблица с данными покупателя (адрес оплаты и адрес доставки, где есть имя и фамилия).

Если она у вас вырезана, то посмотрите файл: catalog/view/theme/default/template/mail/order.tpl   строки 53-70

Имейте ввиду, что файл общий и для письма админу и для письма клиенту.

Знаете, просмотрел я родной order.tpl и не обнаружил я в нём намёков на имя (( А у Вас приходит письмо с именем?

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


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

Там есть не намек, а явный призыв к адресу доставки и адресу оплаты, в которые включены данные о имени и фамилии покупателя.

Вы должны получать вот такое письмо: http://prntscr.com/9fsol3

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


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

Там есть не намек, а явный призыв к адресу доставки и адресу оплаты, в которые включены данные о имени и фамилии покупателя.

Вы должны получать вот такое письмо: http://prntscr.com/9fsol3

Теперь понял. Дело всё в том, что именно поле "Адрес Платежа" я и вырезал. Подскажите, а как с него теперь правильно вырвать "имя" и присобачить его в "информацию о заказе"?

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


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

Это не проблема, только ведь клиенты у вас тоже не видят себя как заказчика в письме, они ведь тоже самое получают, не смущает вас это?

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


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

На данный момент у меня вот настолько урезана информация. Магазин работает исключительно на самовывоз.

 

0dd10c13d7ff.jpg

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


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

Я вижу, что они получают. Я же провожу тестовые заказы. По сути, уже после подтверждения заказа они всё знают, что им нужно делать, чтобы приобрести товар. Письмо уже формальность. Но мне было бы очень удобно, чтобы я сразу видел телефон клиента, и имя, чтобы понимать как к нему обращаться. В админку не всегда хочется лезть, тем более со смартфона.

Изменено пользователем Seman

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


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

А что касается адреса для самовывоза, так у меня это идёт в самом тексте письма... Где забирать товар они прочитают однозначно.

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


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

Самый простой способ, это положить оригинальную тпл-ку рядом в ту же папку, но с названием "aorder.tpl" и использовать её для писем админу,

при этом в файле: catalog/model/checkout/order.php

в строках 717-721 заменить order.tpl на aorder.tpl

 

-------------------------

второй способ сделать копию вашей модифицированной тпл-ки и так же назвать её aorder.tpl

и в неё, в нужном месте добавить: <?php echo $client_name; ?>

потом в файле: catalog/model/checkout/order.php

в строках 717-721 заменить order.tpl на aorder.tpl

и до строки 717 добавить :

$data['client_name'] = 'Покупатель: ' . $order_info['firstname'] . ' ' . $order_info['lastname'];

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


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

Первый способ - отлично работает!

 

Для ищущих решение:

 

1. Копируем order.tpl, который лежит в catalog/view/theme/default/template/mail/ и переназываем его aorder.tpl.

Если файл order.tpl подвергался модификации, то надо копировать родной от Вашей версии Opencart.

 

2. Редактируем файл order.php, который лежит в catalog/model/checkout/.

Находим:

if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/mail/order.tpl')) {
 $html = $this->load->view($this->config->get('config_template') . '/template/mail/order.tpl', $data);
} else {
 $html = $this->load->view('default/template/mail/order.tpl', $data);
}

меняем на:

if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/mail/aorder.tpl')) {
 $html = $this->load->view($this->config->get('config_template') . '/template/mail/aorder.tpl', $data);
} else {
 $html = $this->load->view('default/template/mail/aorder.tpl', $data);
}

За решение, спасибо shchs!

Изменено пользователем Seman
  • +1 1

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


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

А как всё таки вывести имя покупателя в шаблоне письма? Какая переменная за это отвечает? Я пробовал name, first_name, firstname, и некоторые другие, но в письме всегда пишет - "Notice: Undefined variable: first_name in /home/t/theokc0n/fastmuscles.ru/public_html/catalog/view/theme/default/template/mail/order.tpl on line 32".

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


Ссылка на сообщение
Поделиться на другие сайты
В 18.12.2015 в 23:28, shchs сказал:

Самый простой способ, это положить оригинальную тпл-ку рядом в ту же папку, но с названием "aorder.tpl" и использовать её для писем админу,

при этом в файле: catalog/model/checkout/order.php

в строках 717-721 заменить order.tpl на aorder.tpl

 

-------------------------

второй способ сделать копию вашей модифицированной тпл-ки и так же назвать её aorder.tpl

и в неё, в нужном месте добавить: <?php echo $client_name; ?>

потом в файле: catalog/model/checkout/order.php

в строках 717-721 заменить order.tpl на aorder.tpl

и до строки 717 добавить :

$data['client_name'] = 'Покупатель: ' . $order_info['firstname'] . ' ' . $order_info['lastname'];

 

 

Попробовал 2 вариант не получилось пустая строка в письме 

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


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

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

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

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

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

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

Войти

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

Войти

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

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

×

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

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