Вход / Регистрация

Создайте сайт прямо сейчас!

Зарегистрируйтесь по ссылкам и получите дополнительные бонусы при создании сайта



  • Персональный перечень способов заработка на сайте именно вашей тематики
  • Аудит юзабилити сайта бесплатно $20
  • Набор скриптов на сумму $40 для увеличения продаж
  • Аудит юзабилити интернет магазина бесплатно $60

Как получить бонусы?


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

После оплаты одного из пакетов, отправьте запрос на info@ucozmagazines.ru с указанием адреса созданного сайта.

Урок 32. Настройка e-mail уведомлений

E-mail уведомления - инструмент взаимодействия интернет магазина с покупателем после оформления заказа

Сергей    06.03.2014    7709    5.0 из 5.0 (1)

Оцените материал:

Цель урока

Настроить e-mail уведомления пользователю и администратору при оформлении заказа. Познакомиться с переменными шаблона уведомлений и условными операторами.

Введение

В прошлом уроке мы оформили первый заказ в интернет магазине. Покупателю отправляется на e-mail письмо с подробностями заказа, откуда он в любой момент сможет проверить состав и статус заказа. Это удобно и используется повсеместно.

Вот как может выглядеть такое письмо:

Информация о заказе

ID: 219
Сумма заказа: 655р.

Подробная информация:
http://вашсайт/shop/order/ссылка_на_страницу_заказа

__________________

Настроить шаблон этого уведомления:
http://ваш_сайт/panel/?a=shop;l=notify

Уведомления для пользователя бывают нескольких видов:

  • при оформлении нового заказа
  • при смене статуса заказа
  • доставка купленных цифровых товаров
  • при изменении примечания к заказу

Для администратора дополнительно могут быть уведомления:

  • при добавлении товара субагентом (о субагентах мы будем говорить позже)
  • об ожидании премодерации товара, отредактированного субагентом
  • об окончании товара на складе (подробнее про остатки $STOCK$)

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

Я не буду подробно останавливаться на субагентах в этом уроке. Это объемный материал и мы рассмотрим его отдельно. Сейчас давайте активируем те уведомления, которые нам требуются.

Включение уведомлений

Переходим в панель управления - интернет магазин - Заказы и пользователи - Настройка уведомлений :

Откроется страница настроек уведомлений:

Настройка e-mail уведомлений

Сейчас нас интересуют e-mail уведомления. Для того, чтобы активировать соответствующее уведомление, просто поставить галочку напротив и нажмите "Сохранить".

Обратите внимание, что есть уведомление о поступлении товара из списка желаний (wishlist). В данный момент разработчики еще не подключили такую возможность, поэтому оно неактивно.

Настройка уведомлений

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

Откроется окно:

Чтобы настраивать уведомления, нет необходимости изучать HTML или CSS. Все делается как в любом текстовом редакторе. Мы пишем текст, клавишей Enter вставляем переносы строк и используем $переменные$ uCoz, чтобы вывести информацию для пользователя.

Список используемых переменных для уведомлений пользователя:

Переменная Описание
<SUBJ></SUBJ> Тема письма
$ORDER_ID$ ID заказа. Номер заказа в базе данных вашего магазина
$ORDER_CODE$ Номер (код) заказа. Тоже, что и ID, но включает в себя "№".
$ORDER_LINK$ Ссылка на страницу заказа. Просмотр доступен только если вы авторизованы как администратор или пользователь оформивший заказ
$ORDER_AKEY$ Переменная, которая позволяет сформировать ссылку на заказ для неавторизованных пользователей. Чтобы показать такую ссылку используйте следующее сочетание:
 $ORDER_LINK$-auth-$ORDER_AKEY$ 
$ORDER_IP$ IP-адрес пользователя, который оформил заказ
$ORDER_UID$ ID пользователя, оформившего заказ
$ORDER_GROUP_UID$ ID группы пользователя, оформившего заказ
$ORDER_NUM$ Количество позиций в заказе
$ORDER_WEIGHT$ Суммарный вес заказа. Высчитывается исходя из данных товаров (подробнее про $WEIGHT$ товара)
$ORDER_AMOUNT$ Суммарная стоимость товарных позиций в заказе в валюте, выбранной пользователем
$ORDER_AMOUNT_RAW$ Суммарная стоимость товарных позиций в заказе в чистом виде
$ORDER_TOTAL$ Итого по заказу с учётом таксы за доставку товара в валюте, выбранной пользователем
$ORDER_TOTAL_RAW$ Итого по заказу с учётом таксы за доставку товара в чистом виде
$ORDER_TOPAY$ Сумма к оплате выбранным способом с учётом дисконтной скидки в валюте, выбранной пользователем
$ORDER_TOPAY_RAW$ Сумма к оплате выбранным способом с учётом дисконтной скидки в чистом виде
$ORDER_VAT$ НДС от суммы "К оплате" (о том, как настроить НДС мы будем говорить позже)
$ORDER_VAT_RAW$ Значение НДС в чистом виде
$ORDER_VAT_TYPE$ Значение настройки "НДС"(0 - отключено, 1 - входит в цену, 2 - насчитывается отдельно)
$ORDER_TOPAY_CURR$ Сумма к оплате выбранным способом с учётом дисконтной скидки в валюте платёжной системы
$ORDER_PROFIT$ Прибыль от заказа (рассчитывается по матрице формирования цен)
$ORDER_PROFIT_RAW$ Прибыль от заказа в чистом виде
$ORDER_DISCOUNT$ Размер скидки в валюте, выбранной пользователем
$ORDER_DISCOUNT_RAW$ Размер скидки в чистом виде
$ORDER_FIELD_N$ Значения полей заказа, которые ввел пользователь при оформлении.
$DELIVERY$ Выбранный способ доставки
$DELIVERY_DESCR$ Описание выбранного способа доставки
$ORDER_TAX$ Такса за доставку, которая была рассчитана исходя из матрицы цен для доставки в валюте магазина
$ORDER_TAX_RAW$ Такса за доставку в чистом виде
$PAYMENT$ Выбранный способ оплаты
$PAYMENT_DESCR$ Описание выбранного способа оплаты
$ADD_DATE$ Дата оформления заказа
$ADD_TIME$ Время оформления заказа
$ADD_WDAY$ День недели когда был оформлен заказ
$SHOP_LINK$ Ссылка на главную страницу магазина (как выбрать главную страницу магазина)
$SHOP_NAME$ Название магазина
$BODY$ Перечень заказанных товаров

Чтобы изменить дизайн уведомлений, просто добавьте одну из $переменных$ туда, где вы хотите ее видеть. Например, уведомления покупателю при оформлении заказа имеют по умолчанию такой вид:

<SUBJ>$SHOP_NAME$ - Ваш заказ</SUBJ>

$ADD_DATE$ $ADD_TIME$ вы оформили заказ ($ORDER_CODE$)
----------------------------------------------------------
$BODY$
----------------------------------------------------------
Итого: $ORDER_TOTAL$<?if($ORDER_DISCOUNT$)?>
Скидка по дисконту: $ORDER_DISCOUNT$<?endif?><?if($DELIVERY$)?>
Способ доставки: $DELIVERY$<?endif?>
Способ оплаты: $PAYMENT$
Сумма к оплате выбранным способом: $ORDER_TOPAY_CURR$
----------------------------------------------------------

Просмотреть состояние вашего заказа и произвести оплату всегда можно по следующей ссылке:
$ORDER_LINK$-auth-$ORDER_AKEY$

Благодарим, что воспользовались услугами нашего магазина.

А я хочу, чтобы:

  1. В теме письма указывался номер заказа
  2. В конце письма был размещен призыв оставить отзыв на сайте

Добавляем номер заказа и призыв в шаблон:

<SUBJ>$SHOP_NAME$ - Ваш заказ $ORDER_CODE$ </SUBJ>

$ADD_DATE$ $ADD_TIME$ вы оформили заказ ($ORDER_CODE$)
----------------------------------------------------------
$BODY$
----------------------------------------------------------
Итого: $ORDER_TOTAL$<?if($ORDER_DISCOUNT$)?>
Скидка по дисконту: $ORDER_DISCOUNT$<?endif?><?if($DELIVERY$)?>
Способ доставки: $DELIVERY$<?endif?>
Способ оплаты: $PAYMENT$
Сумма к оплате выбранным способом: $ORDER_TOPAY_CURR$
----------------------------------------------------------

Просмотреть состояние вашего заказа и произвести оплату всегда можно по следующей ссылке:
$ORDER_LINK$-auth-$ORDER_AKEY$

Благодарим, что воспользовались услугами нашего магазина. Оставьте отзыв о нашей работе - http://ваш_сайт/gb 

Нажимаем кнопку "Сохранить". Оформляем еще один тестовый заказ и проверяем изменения.

Обратите внимание, что уведомления для пользователя, субагента, администратора могут использовать разные $переменные$. Так, $BODY$ (перечень товаров) работает только для пользователя, а $ORDER_PROFIT$ (прибыль) только для администратора и субагента. Список доступных кодов можно посмотреть нажав на соответствующую ссылку в редакторе шаблона:

Откроется список переменных:

Условные операторы

Просматривая шаблоны уведомлений, обратите внимание на конструкции вида:

<?if($ORDER_DISCOUNT$)?>
Скидка по дисконту: $ORDER_DISCOUNT$<?endif?>

<?if ...?>...<?endif?> - это конструкция условного оператора. Мы передаем в нее $переменную$ и в зависимости от ее значения выполняем что-либо.

Рассмотрим работу условных операторов на примере:

<?if($ORDER_DISCOUNT$)?>
Скидка по дисконту: $ORDER_DISCOUNT$<?endif?>

Мы передаем условному оператору $ORDER_DISCOUNT$. Если его значение отлично от нуля, то будет отображена строка:

Скидка по дисконту: $ORDER_DISCOUNT$

Если значение $ORDER_DISCOUNT$ равно нулю, то ничего показано не будет.

Можно расширить действие условного оператора за счет <?else?>. Если мы хотим показать сообщение, что скидка равна нулю:

<?if($ORDER_DISCOUNT$)?>
Скидка по дисконту: $ORDER_DISCOUNT$<?else?>
Скидка по дисконту равна нулю<?endif?>

Мы только познакомились с теми возможностями условных операторов, которые используются в уведомлениях. На самом деле они значительно шире и это тема отдельного урока.

Отправлять уведомления в HTML-формате

Обновление от 18.03.2014

Стало доступно применение HTML в e-mail уведомлениях. Теперь можно настроить внешний вид писем так, как душе угодно. Это первый тревожный звонок, если вы не знакомы с этим языком.

Порядок включения такой: переходим в настройки уведомлений (как в п.2) и в самом низу отмечаем галочкой Отправлять уведомления в HTML-формате .

Далее переходим в настройки определенного уведомления (как в п.3) и вводим HTML-код уведомления, которое мы подготовили заранее.

Чтобы изучить HTML, просмотрите Урок 2. Требования к разработчику.

Упражнения

  1. Включите уведомления для пользователя и администратора.
  2. Настройте шаблоны уведомлений.
  3. В процессе настройки используйте $переменные$ и <?условные операторы?>.
  4. Начните изучать HTML или наймите знающего человека себе в помощь.
  5. Настройте e-mail уведомления в формате HTML.


Оцените материал:


Расскажите друзьям и коллегам о полезной статье:

Обсуждение

Всего комментариев: 53

a
1
Серый привет.
При использовании html уведомлений столкнулся с проблемой.
Тег $BODY$ в письме отображается сплошным текстом (без переноса строк)

ТП ucoz утверждает что это исправить не возможно и в ближайшее время не планируется.

Что ты об этом думаешь? Есть ли какие либо кастомные решения?
avatar
2
Привет. Скинь копию такого письма на info@ucozmagazines.ru
a
3
Отправил. Тема: Проблема с тегом BODY
avatar
4
Сергей, спасибо за решение:

<pre>
$BODY$
</pre>
W
5
Добрый день. При покупке цифрового материала, покупателю обязательно регистрироваться на сайте магазина или есть какая-то возможность после совершения им покупки сообщить ссылку для загрузки материала?
avatar
0
6
Здравствуйте.

Регистрация не обязательна, на почту придет ссылка на страницу с заказом и там можно будет получить товар
a
7
Есть ли какой то способ уведомления о поступлении товара.
Wishlist не подходит, т.к. там не фиксируются желания гостей и уведомление вручную запускается.
avatar
0
8
Кого уведомлять будем? Тех, кто уже оформил заказ? Или кто только зашел на страницу товара?
a
9
всех, кто хочет узнать когда товар появится на остатках
avatar
0
10
Не знаю такого решения. Разве что разбираться с API Mailchimp или Mandrill
a
11
А если каким то хитрым скриптом регистрировать гостя (гость указывает имя и почту).
Скрипт-бот его регистрирует, и нажимает кнопочку "мне нравится".

Такое вобще можно реализовать на ucoz?

Или просто регистрация в uWind окне, после чего обновление страницы.
avatar
1
12
Сейчас есть регистрация через соц сети, для этого не нужен бот. Регистрация в один клик.

А для локальных пользователей есть скрипт быстрой регистрации (там всего три поля - логин, пароль и капча).

Т.е. в моем понимании, чтобы корректно с точки зрения законодательства выслать уведомление, нужно сделать так:
1. Показать сообщение: "Товара нет в наличии. Хотите получить e-mail письмо о его появлении?"
2. При нажатии кнопки - зарегистрировать юзера и добавить товар в вишлист
3. В настройках уведомлений включить информировании о поступлении товара

Главная тут трудность - после регистрации пользователь попадает на главную страницу магазина, а надо его направить на страницу товара, чтобы добавить в вишлист. По идее, можно в куки записать URL страницы и после регистрации перейти по ней.

В принципе, да, реально кажется.
a
13
Спасибо, за консультацию
g
14
Сергей, здравствуйте, как добавить товарное содержимое заказа в уведомление для админов. Нам бы хоть ссылочки этих позиций увидеть.
avatar
0
15
Здравствуйте, к сожалению, $BODY$ не работает для админов, возможности такой нет.
A
16
Вы можете помочь в настройке уведомления?
avatar
0
17
Здравствуйте. Помочь могу. Какой у Вас вопрос?
avatar
18
Спасибо Сергей. но я уже методом тыка, настроила. Извините за беспокойства. С ПРАЗДНИКОМ ВАС.
p
19
Доброго времени суток! А возможно ли как то человеку при входе на сайт дать ссылку на сразу на страницу заказа(на сам заказ то есть), минуя страницу "мои заказы"? К примеру если всего один заказ, то было бы удобно.
avatar
0
20
можно, но это как-то очень глупо
p
21
И все же, не подскажете как это сделать?)
avatar
0
24
можно написать скрипт, который выведет ссылку на последний заказ. Или можно воспользоваться нашим скриптом повтора недавней покупки
F
22
Здравствуйте. В уведомлениях о новом заказе администратору не работает код $BODY$ . Хотелось бы на почту сразу получить наименование товара. Сейчас настроил таким образом что при новом заказе мне поступает ссылка на товар и заказ.

Параллельно хочу уточнить: можно ли получать письмо с фотографией заказанного товара и контактными данными покупателя?
avatar
0
23
системой не предусмотрено, но можно написать скрипт
F
25
Здравствуйте. Подскажите, пожалуйста, можно ли уведомления о новых заказах получать на дополнительный E-mail, а не на который зарегистрирован админ? Если да, то подскажите пожалуйста как это сделать.
avatar
26
Панель управления » Интернет-магазин » Настройка уведомлений

Вкладка "SMS-шлюз и прочие настройки"

Альтернативные e-mail адреса для уведомлений:
avatar
27
После слов "И вводим HTML-код уведомления" ни слова о том, например, как изменить строки заказа из $BODY$ и добавить туда изображения или всё же сделать так, чтобы этот список не выглядел так уродливо:
1) Крем с витамином Е и авокадо Crema Avocado Vita-Е, 50 мл 1шт
2) Крем для глаз с эластином Crema contorno occhi elastina, 30 мл 1шт

Слова "учите HTML" ничего не значат, так как не понятно куда этот HTML вставлять.
<tr>
<td>$ID$</td><td>$THUMB$</td><td>$NAME$</td><td>$OPTIONS$</td>
</tr>
avatar
0
28
И это не просто так. Дело в том, что строки эти изменить не получится.
avatar
29
А в чём тогда сакральный смысл фразы "Теперь можем настроить внешний вид писем так, как душе угодно"?
Без отправки HTML в каждой строке товара есть ссылка на сам товар в интернет-магазине. В HTML варианте эти ссылки становятся не кликабельными а просто текстом. Порой очень длинным и совершенно некрасивым. Как бы красиво верх и низ письма не оформлялся в HTML, а строки заказа всё превращают в "ужас летящий на крыльях ночи". Если же отправлять уведомление без детализации, то это становится совершенно не информативно.
На других движках уже давно интернет-магазины используют HTML вёрстку не только шапки и подвала письма, но и строк самого заказа. К тому же к тексту заказа добавляют информацию о сопутствующих или похожих товарах. Здесь же, увы, этим и не пахнет.
Отправка в HTML вроде как и есть, но по факту ею воспользоваться без понижения престижа сайта нельзя.
avatar
1
30
Как бы то ни было, всегда найдется человек, которому будет мало существующих возможностей. Вы можете предложить свою идею на http://all.uwishlist.ru

Со своей стороны обещаю поддержку голосами в этом вопросе.
avatar
31
Спасибо за совет. Предложение сделал. Пока на модерации.
avatar
32
Предложение опубликовано, вот ссылка, если интересно, может наберёт решающее количество голосов.
avatar
1
33
Поправил ссылку. Проголосовал
avatar
34
Спасибо!
f
35
Здравствуйте. В настройках уведомлений во вкладке SMS-шлюз и прочие настройки указал альтернативный email для уведомлений и указал обратный email адрес для уведомлений, нажал сохранить и попробовал сделать заказ. В итоге ничего не изменилось - как со "стокового" ящика приходили письма, так и в этот раз пришло (обратный адрес тоже не изменился). Подскажите пожалуйста в чем может быть дело!?
Заранее спасибо.
avatar
0
36
Здравствуйте!

Данная настройка подразумевает указание адреса для ответа. Но сам адрес отправителя в письме не меняется.
J
37
"Чтобы настроить вид соответствующего уведомления, нажмите по изображению.
"  

у меня нет такого рисунка. Я не могу изменить уведомление. Где искать?
avatar
0
38
там значок поменялся, теперь он выглядит как карандаш
a
39
Здравствуйте! подскажите пожалуйста можно ли сделать так, чтобы  при смене статуса заказа дополнительно выводилось описание( причина отмены) Пример: Клиент заказал товар, подтвердил по телефону что он ему нужен, соответственно в системе мы поменяли статус на "Оплачивается", но по каким то причинам клиент не оплачивает, у магазина тоже есть свои определенные сроки бронирования Товара. Срок вышел статус поменялся на "Отменен" но клиент получил уведомление что статус заказа "Отменен", а причины нет как это можно реализовать?
avatar
0
40
Здравствуйте! А причин отмены несколько или всегда одна?
a
41
В разных ситуациях по разному может, быть одна, а может и несколько. мне нужен способ реализации. А там видно будет.
avatar
0
42
Можете использовать для этого поле заказа, которое будет скрыто на странице оформления.
a
43
Не совсем понял, поясните.
avatar
0
44
В "Управление полями заказа" создаете новое текстовое поле. Скрываете его на странице оформления заказа:
<script>$('#order-fld-3').parent().hide()</script>

На странице заказа после смены статуса на "Отменен" редактируете поле и указываете в нем причину отмены. Она будет видна покупателю.
a
45
Я создал, вставил скрипт, но что то не особо он хочет скрываться.
<script>$('#order-fld-7').parent().hide()</script>
Страница служебных форм:
сам код:
<h2><b><!--<s4452>-->Ваши контактные данные:<!--</s>--></b></h2>
<h3 class="page-title">$ORDER_FIELDS$<h3>

Страница заказа:
код:
<h2 class="page-titl"><ins><h2><b>Ваши данные для заказа:</b></h2></ins>
<?if($ORDER_FIELDS$)?><div id="order-info" class="commFl" style="margin-top:20px;">$ORDER_FIELDS$</div><?endif?></h2>
Подставлял по разному, может я что то не то делаю.
avatar
0
46
скрипт после $ORDER_FIELDS$ подключен?
a
47
Спасибо, уже все нормально.
o
48
Добрый день!
Можно ли настроить уведомление для администратора так, что бы он видел все данные заказа в письме, включая телефон и адрес.
Для клиента body видно, надо еще также телефон и адрес, который он сам и указал.

Или что бы приходила не ссылка на заказ, а сам весь заказ?
avatar
0
49
Здравствуйте!

Для администратора список товаров вывести нельзя. Список полей, которые указал клиент, можно вывести с помощью переменных $ORDER_FIELD_1$, $ORDER_FIELD_2$, $ORDER_FIELD_3$ т.д.
o
50
Спасибо
В
51
Здравствуйте, подскажите, как сделать так, чтобы при смене статуса заказа, отправлялось соответствующий текст уведомления вместе с ним на почту клиента? К примеру как меняется на статус ОПЛАЧЕН один текст, статус СОБРАН , другой текст, статус ДОСТАВЛЯЕТСЯ, третий текст. Тексты фиксированные  вне зависимости  от клиентов, просто каждому статусу, разный текст, чтобы соответствовал. В данный момент реализована, 2 вида - при оформлении заказа, и при смене статуса, просто мне надо чтобы при разных статусах, разные тексты пересылались
avatar
0
52
Здравствуйте!

В шаблоне есть переменная $NEW_STATUS$, которая содержит название нового статуса. С помощью условных операторов можно вывести произвольный текст для любого статуса.

Например:
<?if $NEW_STATUS$ = 'Оплачивается'?> Текст для статуса "Оплачивается" <?endif?>
<?if $NEW_STATUS$ = 'Оплачен'?> Текст для статуса "Оплачен" <?endif?>
avatar
53
как сделать чтобы админу приходило сообщение как пользователю? вопрос про тег бади

в идеале хотелось бы увидеть решение
1, в виде точной копии то что приходит пользователю, приходило и админу.
2, или чтобы в шаблоне пользователя можно было поставить маил адрес скрытой копии.
3, или чтобы приходило админу точно как печатная форма заказа
Урок 32. Настройка e-mail уведомлений
Урок 32. Настройка e-mail уведомлений