Все о тюнинге авто

Отправка email сообщений opencart. Настройка почты в OpenCart Не приходит уведомление о заказе opencart

От автора: приветствую вас, друзья. Итак, мы продолжаем цикл статей, посвященных знакомству с одной из популярнейших CMS для создания интернет-магазинов – OpenCart (Оперкарт). В этой статье мы поговорим о том, как в OpenCart настроить почту.

Одной из нужных функций в OpenCart является отправка почты. После каждого оформленного заказа информация о нем должна приходить на почту менеджеру сайта, чтобы он оперативно смог обработать поступивший заказ. Также желательно отправлять и письмо клиенту и совершенном заказе, это будет хорошим тоном в отношении клиента. Давайте же посмотрим, как и где настроить почту в OpenCart.

Как вы понимаете, делается это в админке, куда мы и переходим. Заходим в меню Система – Настройки и заходим в редактирование настроек магазина. Здесь нас, прежде всего, интересует вкладка Витрина. Открываем ее и находим поле E-Mail.

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

Отлично! Теперь все уведомления с сайта должны приходить на этот email. На всякий случай обязательно протестируйте этот момент, создав тестовый заказ. Если на почту пришло письмо с данными заказа, значит, все работает. Если же письма нет (обязательно проверьте папку Спам), тогда можно попробовать указать другой ящик, желательно на другом домене. Если и со вторым ящиком та же проблема, тогда, скорее всего, на вашем хостинге отключена функция mail и письма попросту не отправляются.

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

Эта вкладка позволяет настроить отправку почты, используя протокол SMTP. Для этого у вас должен быть почтовый ящик, позволяющий производить отправку почты из почтовых клиентов. Например, это может быть ящик yandex.ru, mail.ru, gmail.com, ukr.net и другие. Вам необходимо в настройках почтового ящика разрешить отправку почты из почтовых клиентов и получить настройки SMTP: хост и порт. Все необходимые настройки вы вписываете в предлагаемые поля, руководствуясь подсказками. В качестве почтового протокола вместо Mail выбираете SMTP. Чтобы было понятнее, как работать с SMTP, рекомендую посмотреть , из него вы поймете, что это за настройки и как их использовать.

28 октября 2019 года были опубликованы новые версии модуля по отправке уведомлений из OpenCart/ocStore, в которых исправлена ошибка с некорректной работой селектора имен отправителей в случае, если у клиента/партнера используется более 1 имени отправителя. Если Вы используете более старую версию модуля, то рекомендуем переустановить модуль.

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

С помощью модуля интеграции рассылок "сайт: СМС/Email-рассылки и уведомления" и OpenCart/ocStore Вы можете отправлять СМС- и Email-уведомления по заданным событиям администратору и покупателям интернет-магазина.

2.Совместимость

  1. OpenCart: 2.0, 2.1, 2.2, 2.3, 3.0
  2. ocStore: 2.1, 2.2, 2.3, 3.0

3.Функционал

  1. Автоматическое СМС/Email-уведомление администраторам (одному или нескольким) интернет магазина о появлении нового заказа (отправка Email поддерживается только для версии 3.0)
  2. Автоматическая отправка СМС/Email-сообщений пользователям интернет-магазина при смене статусов заказов
  3. Возможность настроить любой режим отправки уведомлений: только СМС, только Email либо СМС и Email вместе
  4. Отправка произвольных СМС-сообщений на любой номер из настроек модуля
  5. Отправка произвольных СМС-сообщений из карточек заказов
  6. Поддержка шаблонов СМС/Email-сообщений (например, уведомление о новом заказе, смене статуса заказа и многое другое), в том числе стандартных и персонифицированных
  7. Возможность гибкой настройки уведомлений: Вы можете настроить СМС/Email-уведомления только для определенных статусов заказа
  8. Персонификация текстов СМС/Email-сообщений (включая тему письма)
  9. Баланс счета онлайн
  10. Сохранение истории отправленных СМС/Email-сообщений
  11. Возможность отправлять Email через наш SMTP-сервер
  12. Фильтрация некорректных номеров телефонов (длинных, коротких);
  13. Распознавание номеров телефонов в самых разных форматах, например, +79001234567, 79001234567, 89001234567 и т.п.;
  14. Игнорирование немобильных номеров телефонов;
  15. Автоматическая загрузка используемых имен отправителей из Вашего личного кабинета СМС-рассылок sms.сайт;
  16. Отправка СМС абонентам всего мира (Россия, Украина, Белоруссия, Казахстан и т.п.) и многое другое.

4.Активация (на примере ocStore 2.3.)

5.Настройка


6.Особенности установки модуля для Opencart/ocStore 3.0

Как известно, в OpenCart/ocStore 3.0 отсутствует возможность устанавливать файлы в папку system (а нам это нужно), поэтому:

  1. Сначала нужно скачать и установить скаченный модуль в администраторской панели OpenCart/ocStore в пункте меню "Установка дополнений"





  2. После этого зайти в "Модификаторы" и нажать кнопку "Обновить"

  3. Далее установить модуль targetsms-opencart-3.0.ocmod.zip (версия, которая поддерживает отправку только СМС-уведомлений) или модуль targetsms_email-opencart-3.0.ocmod.zip (версия, которая поддерживает отправку и СМС- и Email-уведомлений) точно так же, как описано в примере для версии OpenCart/ocStore 2.3. выше.











7.Создание шаблона СМС-сообщения о новом заказе администраторам интернет-магазина


8.Создание шаблонов СМС-сообщений о статусах заказов покупателям интернет-магазина

  1. Откройте вкладку "Шаблоны СМС покупателю"
  2. Введите тексты шаблонов СМС-сообщений активированных статусов с использованием параметров персонификации, если нужно

9.Создание шаблона Email-сообщения о новом заказе администраторам интернет-магазина


10.Создание шаблонов Email-сообщений о статусах заказов покупателям интернет-магазина

  1. Откройте вкладку "Шаблоны Email покупателю"
  2. Активируйте нужные Вам статусы заказов, поставив галочки
  3. Заполните темы и введите тексты шаблонов Email-сообщений активированных статусов с использованием параметров персонификации, если нужно
  4. Нажмите кнопку "Сохранить" справа вверху

11.Поддержка шаблонов

  1. В обработке
  2. Возврат
  3. Возмещенный
  4. Доставлено
  5. Неудавшийся
  6. Ожидание
  7. Отмена и аннулирование
  8. Отменено
  9. Полностью измененный
  10. Полный возврат
  11. Сделка завершена
  12. А также: шаблоны СМС для произвольных (кастомных) статусов

12.Персонификация текстов СМС/Email-сообщений

В тексте сообщения доступны такие переменные персонификации:

  1. {CUSTOMER_NAME} - ФИО покупателя
  2. {CUSTOMER_FIRSTNAME} - имя покупателя
  3. {CUSTOMER_LASTNAME} - фамилия покупателя
  4. {CUSTOMER_EMAIL} - email покупателя
  5. {CUSTOMER_PHONE} - телефон покупателя
  6. {NUMBER} - номер заказа
  7. {TOTAL_ORIGINAL_PRICE} - стоимость заказа без скидки
  8. {TOTAL_PRICE} - стоимость заказа
  9. {TOTAL_AMOUNT} - количество товара
  10. {STATUS_CHANGE_DATE} - дата последнего изменения статуса
  11. {ORDER_DATE} - дата оформления заказа
  12. {ORDER_DISCOUNT_VALUE} - размер скидки на заказ
  13. {DELIVERY_PRICE} - стоимость доставки
  14. {COMMENT_ADMIN} - поле "Комментарий" (например, для вставки почтового трека заказа)

13.Отправка произвольного СМС-сообщения из настроек модуля

  1. Откройте вкладку "Отправить СМС"
  2. Введите номер телефона получателя и текст сообщения
  3. Нажмите кнопку "Отправить"

14.Отправка произвольного СМС-сообщения из карточки заказа

  1. Откройте карточку нужного Вам заказа
  2. В самом низу страницы в поле "Сообщение" введите нужный Вам текст СМС
  3. Нажмите кнопку "Отправить" (имя отправителя автоматически будет взято из настроек модуля, номер телефона покупателя - из карты заказа)

15.История СМС

Просмотреть историю отправленных СМС сообщений можно на вкладке "История СМС"

16.История Email

Просмотреть историю отправленных Email-сообщений можно в личном кабинете СМС-рассылок sms..

17.Пополнение баланса СМС-рассылок

Проверить и пополнить баланс можно на вкладке "Настройки"

18.Типовые проблемы и сложности

Самые популярные проблемы и вопросы по работе с интеграцией описаны .

Тестовые сообщения бесплатно

Заказчик поставил задачу изменить приходящее сообщение на почту админа. Отправка email сообщений opencart. Думал совсем простая задача, но у меня ушло на это 2 дня. Первая трудность возникла при отсылке почты на mail.ru. Почему-то сообщения на данную почтовую службу просто не приходили.

Итак задачу получил. Дальше стал настраивать opencart изменил в настройках почту для сайта и для админа. Стал тестировать, но сообщения не приходили. До момента изменения попробовал форму просто от балды. Заказчик отписал что сообщение пришло, но суть его задания изменить в заголовке письма от: email, проще говоря ему приходили сообщения с почтой отправителя и получателя его же почтовый адрес.

Не знаю зачем нужна эта картинка вообще, ну да ладно.

Не приходят сообщения opencart

И вот заказчик отписал почту получил я же после изменения почтового адреса на ресурс от mail.ru никак не мог получить письмо, не стану же писать заказчику что не понимаю в чем дело. В итоге ушел целый день на это. В чем вопрос так и не понял, просто изменил почтовый адрес на yandex.

В следующий момент была полная растерянность откуда чего берется, хоть и уже работал на opencart. Следующий день ушел на то чтобы понять структуру ЦМС.

Основной файл отправки:

system\library\mail.php

По аналогии находим похожие поля в contact.tpl и дублируем. Затем находим контролер contact.php такое же название только расширение php. В данном случае было прописано в строке

$mail->setFrom($this->config->get("config_email"));

Заменил на

$mail->setFrom($this->request->post["email"]);

Если нужно передать в тело письма значения с формы то добавить в контролер

$mail->setText($this->request->post["name"]); $mail->setText($this->request->post["phone"]); $mail->setText($this->request->post["subject"]);

Я только только разбираюсь с Opencart 3 и не очень люблю ставить непонятные дополнение, а люблю все разбирать и изучать и вот после того как клиенту запустили сайт и в этот же день после первого заказа было принято решение переработать письмо которое приходит админу и менеджеру о заказе, а именно что бы в письме было:

  • фамилия
  • телефон
  • адрес
  • город
  • способ оплаты
  • способ доставки

Итого, нужно все поля которые заполняет покупатель на сайте.

В итоге вот к чему пришел.

Когда клиент оформляет заказ, то ему при ходит письмо со всей информацией:

тогда как администратору приходит вот такое вот грустное письмо(((


НУ как вы понимаете, а точнее кто хоть раз держал свои интернет магазины, сразу скажет, что это никуда не годится, не позвонить, ни узнать какую то информацию и что бы получить более подробную информацию надо заходить в админку,а если вы в пути и не можете зайти в админку?

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

а теперь немного магии и дело в шляпе)

Opencart 3 письмо админу о заказе

Для того что бы в opencart письмо админу о заказе вся информация приходила в письме, нужно править два файла:

  1. /catalog/controller/mail/order.php
  2. /catalog/view/theme/yourtheme/template/mail/order_alert.twig

order.php

Открываем файл order.php и ищем строку 270 где есть такой текст:

$mail->setTo($order_info[’email’]);
$mail->setFrom($from);
$mail->
$mail->setSubject(html_entity_decode(sprintf($language->get(‘text_subject’), $order_info[‘store_name’], $order_info[‘order_id’]), ENT_QUOTES, ‘UTF-8’));
$mail->setHtml($this->load->view(‘mail/order_add’, $data));
$mail->send();

Под ним вставляем этот код:

$mail->setTo($this->config->get(‘config_email’));
$mail->setFrom($this->config->get(‘config_email’));
$mail->setSender(html_entity_decode($order_info[‘store_name’], ENT_QUOTES, ‘UTF-8’));
$mail->setSubject(html_entity_decode(sprintf($this->language->get(‘text_subject’), $this->config->get(‘config_name’), $order_info[‘order_id’]), ENT_QUOTES, ‘UTF-8’));
$mail->setHtml($this->load->view(‘mail1/order_alert’, $data));
$mail->send();

Данная вставка кода была вставлена в раздел где формируется и отправляется письмо покупателю, и мы такое же письмо отправляем еще и администратору как видите мы подставили шаблон письма order_alert )))

order_alert.twig

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

Смотрите, я делал все на стандартном шаблоне Opencart с темой default и поэтому я создавал специально для этого папку mail1 и в ней создаем файл order_alert.twig , если же у вас своя тема, то просто создаете папку mail если ее там нет

Данные для файла order_alert.twig полностью копируем из файла order_add.twig (который лежит по адресу /catalog/view/theme/default/template/mail)

После этого нам на почту придет вот такое письмо)


Ну и как обычно видео))

Нет похожих записей.