Поиск
Искать в:
Все решения  
  • Все решения
  • Интернет-магазины
    • Аспро: Премьер
    • Аспро: Лайтшоп
    • Аспро: Максимум
    • Аспро: Шины и диски 2.0
    • Аспро: Next
    • Аспро: Оптимус
    • Аспро: Шины и диски, интернет-магазин
    • Аспро: Маркет
    • Аспро: Интернет-магазин
    • Аспро: Крутой шоп
  • Корпоративные сайты
    • Аспро: Приорити 2.0
    • Аспро: Корпоративный сайт 3.0
    • Аспро: Корпоративный сайт 2.0
    • Аспро: Стройка 2.0
    • Аспро: Инжиниринг
    • Аспро: Металл
    • Аспро: Digital 2.0
    • Аспро: Детский сад и образовательный центр
    • Аспро: Курорт 2.0
    • Аспро: Ландшафт 2.0
    • Аспро: Автосервис
    • Аспро: Медицинский центр 3.0
    • Аспро: Ландшафт
    • Аспро: Медицинский центр 2.0
    • Аспро: Курорт
    • Аспро: Стройка
    • Аспро: Сайт медицинского центра
    • Аспро: Корпорация
    • Аспро: Корпоративный сайт
    • Аспро: Корпоративный сайт современной компании
    • Аспро: Приорити
    • Аспро: Digital
  • Модули
    • Аспро: Привязка ответственного
    • Аспро: Шинный калькулятор
    • Аспро: Кредитный калькулятор
    • Аспро: Универсальный импорт
  • 1С-Битрикс
    • Общее

Как настроить почтовые уведомления о новых отзывах в карточке товара?

ID статьи: 106 , создана 23 авг 2016 , последнее исправление  14 мар 2019
Актуально для:
Необходимо, чтобы администратор получал на почту уведомления о новых отзывах в карточке товара и имел возможность их модерировать (удалять и публиковать).

Решение

Настройте форум для публикации отзывов и создайте почтовое событие.


Шаг 1

В административной части сайта перейдите в настройки списка форумов: Рабочий стол → Сервисы → Форумы → Список форумов. Выберите форум, настроенный на вашем сайте на публикацию и хранение отзывов (скорее всего, он будет в списке единственный) и войдите в режим редактирования через кнопку «гамбургер» и пункт «Изменить». Если у вас не создано ни одного форума для отзывов, создайте его с помощью инструкции.


Переключитесь на вкладку «Настройки». В поле «Модерация» поставьте галочку в пункте «Премодерируемый».


Это позволит публиковать отзывы не напрямую, а после одобрения администратора.


Шаг 2

Создаем для начала новый тип почтового события.

Перейдите в Рабочий стол → Настройки → Настройки продукта → Почтовые события → Типы почтовых событий. Нажмите кнопку «Добавить тип».


Тип почтового события пропишите как NEW_ITEM_REVIEW. В описание вставьте следующий код:

#ITEM_NAME# – товар получивший отзыв
#AUTHOR_NAME# – автор
#POST_DATE# – дата
#POST_MESSAGE# – отзыв
#PATH2ITEM# – относительная ссылка


Теперь создаем новый почтовый шаблон для этого события.

Перейдите в Рабочий стол → Настройки → Настройки продукта → Почтовые события → Почтовые шаблоны. Нажмите кнопку «Добавить шаблон».


В настройках нового шаблона пропишите следующие настройки:

  • Выберите сайт, для которого будет действовать шаблон, если у вас несколько сайтов на одной платформе.

  • Выберите тип почтового события из списка. В нашем случае это новый отзыв к товару (так мы назвали новое почтовое событие) [NEW_ITEM_REVIEW] (этот тип мы присвоили событию).

  • Пропишите в полях «От кого» и «Кому» соответствующие адреса электронной почты или специальные коды:
    от кого: #DEFAULT_EMAIL_FROM#
    кому: #DEFAULT_EMAIL_FROM#.
    В случае с кодами адреса будут генерироваться автоматически в зависимости от настроек сайта и внесенных данных

  • Пропишите с поле «Тема» следующую фразу: #SITE_NAME# и новый отзыв к товару #ITEM_NAME#.
    Вместо кодов в готовом письме пропишутся название сайта и название товара

  • В поле «Сообщение» вставьте следующий текст:
    Информационное сообщение с сайта #SITE_NAME#
    <br>
    <hr>
    Добавлен новый отзыв к товару:
    <br>
    #ITEM_NAME#
    <hr>
    Содержание:
    <br>
    автор: #AUTHOR_NAME#
    <br>
    отзыв: #POST_MESSAGE# 
    <br>
    ссылка на товар: https://#SERVER_NAME##PATH2ITEM# 

Или создайте свой, используя эти метки. 


Запомните ID шаблона (он еще понадобится нам в дальнейшем). В нашем случае он равен 78.


Шаг 3

Отредактируйте файл init.php, добавив в него фрагмент кода. 

Внимание! Файл init.php редактируется только по ftp/ Если его нет, то создайте его также по ftp. Редактирование кода файла через структуру сайта может привести к падению всего сайта.

Перед любыми правками кода в структуре сайта настоятельно рекомендуем сделать внеплановую резервную копию сайта. Правки вносите с особой внимательностью: синтаксические ошибки в коде могут привести к нестабильной работе сайта.


Далее сформируйте код для вставки в файл.

<?function notifyNewItemFeedback($ID, $arFields){
ob_start();
$res = CIBlockElement::GetList(
array(),
array(
'IBLOCK_ID' => id_инфоблока_каталога,
'PROPERTY_FORUM_TOPIC_ID' => $arFields["TOPIC_ID"]
),
false,
false,
array('*', 'IBLOCK_ID', 'ID', 'NAME', 'PROPERTY_FORUM_TOPIC_ID', 'SECTION_ID', 'SECTION', 'SECTIONS')
);
if($ar_res = $res->GetNext()){
var_dump(date('d.m.Y H:i:s'));
echo 'найден товар '.$ar_res['NAME'];
$TYPE_MAIL_EVENT = 'NEW_ITEM_REVIEW';
var_dump($ar_res);
$arMail = array(
'ITEM_NAME' => $ar_res['NAME'],
'AUTHOR_NAME' => $arFields['AUTHOR_NAME'],
'POST_DATE' => date('d.m.Y H:i:s'),
'POST_MESSAGE' => $arFields['POST_MESSAGE'],
'PATH2ITEM' => $ar_res['DETAIL_PAGE_URL'],
);
var_dump($arMail);
$ID_MAIL_EVENT = id_почтового_шаблона;
$ok = CEvent::Send($TYPE_MAIL_EVENT, "id_сайта", $arMail, $ID_MAIL_EVENT);
if ($ok){
echo 'Сообщение отправлено';
}
else{
'Сообщение не отправлено '.$ok;
}
}
else{
echo 'Элемент не найден.';
$dump = ob_get_clean();
if (!empty($ok)){
return true;
}
else{
$filename = dirname(__FILE__).'/dump.txt';
if (!file_exists($filename)){
$f = fopen($filename, 'w+');
fclose($f);
} 
file_put_contents($filename, $dump);
}
}
}
AddEventHandler("forum", "onAfterMessageAdd", "notifyNewItemFeedback"); ?>

Где:

  • id_инфоблока – id действующего инфоблока каталога
  •  id_шаблона – id нашего нового почтового шаблона, созданного на предыдущем этапе (шаг 2)
  •  id_сайта – номер сайта для которого вы настраиваете почтовые уведомления о новых отзывах. 

    Посмотреть id сайта можно в настройках списка сайтов: Настройки → Настройки продукта → Сайты → Список сайтов. В нашем случае id сайта равняется s1. 


Чтобы узнать ID инфоблока каталога, перейдите в Рабочий стол → Контент → Инфоблоки → Типы инфоблоков → Каталог. На вкладке «Инфоблок» вы найдете значение ID. Это значение и нужно вставить в код. В нашем случае ID = 13.


ID почтового шаблона, как мы выяснили ранее, равен 78.  

Новый код примет следующий вид:

<? function notifyNewItemFeedback($ID, $arFields){
ob_start();
$res = CIBlockElement::GetList(
array(),
array(
'IBLOCK_ID' => 13,
'PROPERTY_FORUM_TOPIC_ID' => $arFields["TOPIC_ID"]
),
false,
false,
array('*', 'IBLOCK_ID', 'ID', 'NAME', 'PROPERTY_FORUM_TOPIC_ID', 'SECTION_ID', 'SECTION', 'SECTIONS')
);
if($ar_res = $res->GetNext()){
var_dump(date('d.m.Y H:i:s'));
echo 'найден товар '.$ar_res['NAME'];
$TYPE_MAIL_EVENT = 'NEW_ITEM_REVIEW';
var_dump($ar_res);
$arMail = array(
'ITEM_NAME' => $ar_res['NAME'],
'AUTHOR_NAME' => $arFields['AUTHOR_NAME'],
'POST_DATE' => date('d.m.Y H:i:s'),
'POST_MESSAGE' => $arFields['POST_MESSAGE'],
'PATH2ITEM' => $ar_res['DETAIL_PAGE_URL'],
);
var_dump($arMail);
$ID_MAIL_EVENT = 78;
$ok = CEvent::Send($TYPE_MAIL_EVENT, "s1", $arMail, $ID_MAIL_EVENT);
if ($ok){
echo 'Сообщение отправлено';
}
else{
'Сообщение не отправлено '.$ok;
}
}
else
echo 'Элемент не найден.';
$dump = ob_get_clean();
if (!empty($ok)){
return true;
}
else{
$filename = dirname(__FILE__).'/dump.txt';
if (!file_exists($filename)){
$f = fopen($filename, 'w+');
fclose($f);
} file_put_contents($filename, $dump);
}
}
AddEventHandler("forum", "onAfterMessageAdd", "notifyNewItemFeedback"); ?>

Теперь код необходимо скопировать и вставить в файл init.php. Для этого

перейдите в Рабочий стол → Контент → Структура сайта → Файлы и папки → bitrix → php_interface. Найдите файл init.php,нажмите кнопку «гамбургер» рядом с ним и выберите пункт «Редактировать как PHP».



В открывшееся поле вставьте получившийся код. Отредактировав файл, сохраните изменения и проверьте результат: при добавлении нового отзыва на товар администратор получит на указанный в почтовом шаблоне email вот такое письмо:




  • Комментарии
Загрузка комментариев...
Для пользователей

Тэги

1С-Битрикс cdn custom.css Google Fonts google maps init.php js-скрипт SEO sitemap sku template.php title автокомпозит авторизация адаптивная верстка адаптивность таблиц активация 1С-Битрикс акции артикул товара Аспро: Медицинский центр 2.0 баннеры Битрикс24 бренды быстрый заказ валюта видео визуальный редактор вкладка Отзывы вкладки главная страница единицы измерения заголовки задать стили знаки вопроса изменить порядок картинок изображения Интернет-магазин капча карта карта сайта карточка проекта карточка товара каталог товаров каталог услуг кеш классы стилей кодировка количество товара контакты корзина купить в 1 клик левое меню личный кабинет логотип магазины маска телефона медиабиблиотека меню местоположения модули модуль настроек название сайта настройка валют настройка веб-форм настройка инфоблоков настройка компонентов настройка свойств настройка услуг настройки доступа настройки инфоблока настройки магазина настройки модулей настройки раздела не добавляется товар в корзину нет в наличии новости область поиска обновление платформы обновление решения обратный звонок ограничения описание для анонса основной баннер отзывы отзывы о товаре отображение свойств отображение товаров оформление заказа ошибка 404 персональные рекомендации платежные системы поиск покупка без наличия покупка в 1 клик пользовательские свойства популярные категории похожие товары почтовые уведомления почтовые шаблоны привязать товары проекты проживание разделы каталога разработчикам региональные счетчики регистрация резервное копирование свойства заказа свойства инфоблока свойства раздела свойства товара связанные товары символьный код скидки скидки на товар скорость загрузки сайта скрывать изображение модели сортировка социальные сервисы список заказов список пользователей способы доставки сравнение товаров ссылка статьи структура сайта тайтл текст блока «Характеристики» тизеры типы цен товары на складах товары поиск торговые предложения Триггерные рассылки умный фильтр услуги установка решения уязвимости файлы и папки форма задать вопрос формы формы на инфоблоках формы обратной связи форум хлебные крошки цены чпу шаблоны на инфоблоках элементы в разделе