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

[Решено] Где редактируется письмо что приходит на почту?

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

Подскажите, где можно редактировать шаблон письма что приходит на почту человека, который сделал заказа на сайте?

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


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

/catalog/language/russian/mail/order_confirm.php - перевод информации

А сам вывод информации где-то в контроллерах (поищите на форуме)

  • +1 1

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


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

спасибо, а что за контроллеры? в админке вроде нету такого...

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


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

shadow091, контроллеры не в админке.

это файлы.

но вам нужен не контроллер, а модель.

если точнее, то вам нужна функция

public function confirm($order_id, $order_status_id, $comment = '') {
из файла

catalog/model/checkout/order.php

формирующая данные, используемые в шаблоне, и сам шаблон

catalog/view/theme/ВАША_ТЕМА/template/mail/order_confirm.tpl
  • +1 1

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


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

А возможно сделать письмо-уведомление о заказе клиенту только в хтмл виде, а не как по умолчанию - и в хтмл и в txt?

Вроде распостраненные майл клиенты в вэб-интерфейсе нормально отображают хтмл вид (Бат - тем более, насчет Оутлука правда не в курсе, но подозреваю, что тож. должно быть нормально), тогда спршивается зачем нужен вариант в txt?

Пробовала изменять соответствующие файлы:

catalog/view/theme/ВАША_ТЕМА/template/mail/order_confirm.tpl
- С ним всё вроде понятно.

+ языковой, естественно.

А вот с

catalog/model/checkout/order.php
- проблема. НЕ могу понять, что закомментить или корректно изменить для отсылки только в хтмл виде... :huh:

P.S. и еще момент: хотелось оставить IP адрес только в письме администратору магазина и убрать из представления клиенту.

Тоже не получилось - если убирала - то удалялось и там и там...

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


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

Alexa, ни на одном тестовом магазине не проверял.

Не забывайте про бэкап файлов.

А возможно сделать письмо-уведомление о заказе клиенту только в хтмл виде, а не как по умолчанию - и в хтмл и в txt?

catalog/model/checkout/order.php
в функции

public function confirm($order_id, $order_status_id, $comment = '') {
находите строку (примерно 359-ая)

$mail->setText(html_entity_decode($text, ENT_QUOTES, 'UTF-8'));

и просто комментируете

/*
			$mail->setText(html_entity_decode($text, ENT_QUOTES, 'UTF-8'));
			*/

P.S. и еще момент: хотелось оставить IP адрес только в письме администратору магазина и убрать из представления клиенту.

Тоже не получилось - если убирала - то удалялось и там и там...

step_#1: делаем из

catalog/view/theme/ВАША_ТЕМА/template/mail/order_confirm.tpl
два новых шаблона

catalog/view/theme/ВАША_ТЕМА/template/mail/order_confirm_admin.tpl
catalog/view/theme/ВАША_ТЕМА/template/mail/order_confirm_customer.tpl
в клиентском шаблоне

catalog/view/theme/ВАША_ТЕМА/template/mail/order_confirm_customer.tpl
убираем

<?php echo $text_ip; ?> <strong><?php echo $customer_ip; ?></strong>

step_#2: в контроллере

catalog/model/checkout/order.php
все в той же функции

public function confirm($order_id, $order_status_id, $comment = '') {
меняете

if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/mail/order_confirm.tpl')) {
				$html = $template->fetch($this->config->get('config_template') . '/template/mail/order_confirm.tpl');
			} else {
				$html = $template->fetch('default/template/mail/order_confirm.tpl');
			}
на

if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/mail/order_confirm_customer.tpl')) {
				$html = $template->fetch($this->config->get('config_template') . '/template/mail/order_confirm_customer.tpl');
			} else {
				$html = $template->fetch('default/template/mail/order_confirm_customer.tpl');
			}

step_#3: затем, после (примерно 363-я строка)

if ($this->config->get('config_alert_mail')) {
добавляете

if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/mail/order_confirm_admin.tpl')) {
				$html = $template->fetch($this->config->get('config_template') . '/template/mail/order_confirm_admin.tpl');
			} else {
				$html = $template->fetch('default/template/mail/order_confirm_admin.tpl');
			}
  • +1 1

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


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

Закомментировала в catalog/model/checkout/order.php

//$mail->setText(html_entity_decode($text, ENT_QUOTES, 'UTF-8'));
В письме-уведомлении, помимо хтмл-варианта, пришло:

This is a HTML email and your email client software does not support HTML email!

P.S. Это наблюдается при получении мыла через The Bat!, через вэб-интерфейс - отображается только корректный хтмл-вариант...

непонятно...

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


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

В письме-уведомлении, помимо хтмл-варианта, пришло:

This is a HTML email and your email client software does not support HTML email!
тут лучше скриншот добавить.

не совсем понятно что и как пришло, и где это предупреждение отображается.

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


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

В The Bat!

post-3859-0-75702200-1307035180_thumb.gif

post-3859-0-04213400-1307035186_thumb.gif

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


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

Закомментировала в catalog/model/checkout/order.php

//$mail->setText(html_entity_decode($text, ENT_QUOTES, 'UTF-8'));
В письме-уведомлении, помимо хтмл-варианта, пришло:

This is a HTML email and your email client software does not support HTML email!
P.S. Это наблюдается при получении мыла через The Bat!, через вэб-интерфейс - отображается только корректный хтмл-вариант...

непонятно...

 

 

Чтобы убрать из сообщения эту фразу, нужно удалить ее с файла /system/library/mail.php

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


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

Здравствуйте, не подскажете где еще необходимо изменить данную переменную для отображения итоговой суммы в письме клиента?

 

вот тут, как я понял 

 

catalog/view/theme/моя тема/template/mail/order.tpl внес изменения. Вместо <?php echo $total['text']; ?> вставил  <?php echo $cart_total; ?>, так как у меня переменная  <?php echo $cart_total; ?> отвечает за вывод итоговой суммы

<tfoot>
      <?php foreach ($totals as $total) { ?>
      <tr>
        <td style="font-size: 12px;	border-right: 1px solid #DDDDDD; border-bottom: 1px solid #DDDDDD; text-align: right; padding: 7px;" colspan="4"><b><?php echo $total['title']; ?>:</b></td>
        <td style="font-size: 12px;	border-right: 1px solid #DDDDDD; border-bottom: 1px solid #DDDDDD; text-align: right; padding: 7px;"><?php echo $cart_total; ?></td>
      </tr>
      <?php } ?>
    </tfoot>

Где еще необходимо сделать изменения чтобы отображалась итоговая ссумма? скорее всего в контролере в какой нибудь...

 

версия opencart 1.5.4

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


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

Парни, выручайте! :)

Не пойму в чем дело. Покупателю приходит письмо, в нем все ок, только она проблема,

http://clip2net.com/s/61lOeb

 

т.е. не отображается какой товар, модель и т.д.

Почему такое может быть? В самом магазине при оформлении и в корзине все нормально отображается.

 

Админу кстати, тоже эти строки пустые приходят.

Такое чувство, что при формировании письма не подгружаются данные, но почему? И где копать?

Как вам такая проблемка?! :-D

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


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

смотри логи.

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


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

смотри логи.

Да, там как раз ошибки по этому поводу, но не пойму откуда их корни?

Вот что в логах http://clip2net.com/s/61Ez0x

Данный файл о котором идет речь, заменил на всякий случай еще раз на оригинальный, те же самые ошибки.

Т.е. они получается идут уже в этот файл откуда-то из другого места.

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


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

Никто не знает?

Хотя бы примерно куда копать?

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


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

копать - вниз.

смотреть - регистрацию и оформление заказов (вы что-то там намудрили).

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


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

Может кому-то пригодится. В общем проблема была в странице оформления заказа. Шаблон не дефолтный, и в нем почему-то был левый код, не хватало нескольких переменных.

Отловил переключившись на дефолтную тему, оказалось она работает, таким макаром стало 100% понятно, что проблема в шаблоне.

Далее заменил страницу оформления заказа на дефолтную и оформил заказ, все прошло нормально. Дальше допилил не дефолтную страницу и стало нормально.

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


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

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

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

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

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

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

Войти

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

Войти

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

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

×

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

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