Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

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


Recommended Posts

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

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

Link to post
Share on other sites

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

Link to post
Share on other sites

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

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

c59dad97acfd.jpg

Link to post
Share on other sites

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

Link to post
Share on other sites

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

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

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

Link to post
Share on other sites

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

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

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

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

Link to post
Share on other sites

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

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

Link to post
Share on other sites

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

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

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

Link to post
Share on other sites

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

Link to post
Share on other sites

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

 

0dd10c13d7ff.jpg

Link to post
Share on other sites

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

Edited by Seman
Link to post
Share on other sites

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

Link to post
Share on other sites

Самый простой способ, это положить оригинальную тпл-ку рядом в ту же папку, но с названием "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'];

Link to post
Share on other sites

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

 

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

 

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!

Edited by Seman
  • +1 1
Link to post
Share on other sites

  • 11 months later...

А как всё таки вывести имя покупателя в шаблоне письма? Какая переменная за это отвечает? Я пробовал 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".

Link to post
Share on other sites

  • 3 months later...
В 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 вариант не получилось пустая строка в письме 

Link to post
Share on other sites

  • 4 years later...

У темы плашка "Решено", но что-то тут решения нет. 

 

Может кто-то подскажет, в OC 3, есть ли просто переменная по тиму мейла, телефона...которой можно вывести имя клиента в письме? Также перепробовал firstname, lastname, payment_firstname... ничего не выводит.

 

image.thumb.png.ce505e6e1dbc6de3c8353399c8361504.png

 

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.