Рассылка новинок каталога в автоматическом режиме

Просмотров: 2738

Что бы реализовать рассылку новинок каталога на email-ы пользователей, можно воспользоваться событием OnBeforeIBlockElementAdd и модулем subscribe

Отправка рассылки при создании нового элемента инфоблока

В целом, все просто:

  • Создаем новую рассылку, штатными способами. Выбираем группу пользователей которой рассылать...рассылку
  • Создаем страничку на сайте, на которой выводим новинки (именно новые элементы)- на эту страничку ссылаемся из письма
  • Пишем обработчик в init.php который будет автоматически: менять статус подписки на "Черновик", выполнять рассылку на cron.

Менять статус рассылки на "Черновик" обязательно так как, после выполнения, рассылка перейдет в статус "Отправлено" и в следующий раз не сработает.

Использованные методы:
$cPosting->ChangeStatus - смена статуса
$cPosting->AutoSend($ID); - отправка рассылки на cron

Код для init.php


AddEventHandler('iblock', 'OnBeforeIBlockElementAdd', 'NewCatItem');
function NewCatItem(&$arFields)
 {
     $SITE_ID = 's1';       //ID сайта
     $IBLOCK_ID = 12;  //ID инфоблока
     $ID = 4;                   //ID созданной рассылки
     if ($arFields['IBLOCK_ID'] == $IBLOCK_ID)
     {
              CModule::IncludeModule('subscribe');  //Подключаем модуль рассылок
              $cPosting = new CPosting();                // Получаем информацию о рассылке
              $arFilter = Array(
                 "STATUS_ID" => $find_status_id       //Получаем текущий статус рассылки
              );
             if ($STATUS = "S") {                               //Если в статусе S - отправлено
                         $cPosting->ChangeStatus($ID, "D"); //Меняем на D - черновик
             }
            $cPosting->AutoSend($ID);  //Рассылаем
       }
}
Перетащите файлы
Ничего не найдено
Нажимая кнопку "Отправить" вы соглашаетесь
с политикой конфиденциальности и обработки персональных данных.

Блог-note: заметки разработчика

СЕО настройки сайта перед запуском

В видео рассказано о первоначальной СЕО настройке сайта перед запуском. Все показанное является компилицией из собственн...

Создание раздела инфоблока при регистрации пользователя в Битрикс

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

Получение списка Highload блоков с помощью API Битрикс

1С-Битрикс предоставляет мощный инструментарий для обеспечения эффективной работы ваших проектов. Одним из способов упра...

Уникальная СЕО информация для каждого торгового предложения в каталоге 1С-Битрикс

Задача: реализовать уникальную мета-информацию для каждого SKU в каталоге. У каждого ТП должны быть свои: заголовок h1, ...

Если папка то применяем, проверка текущего раздела или подраздела

Иногда требуется применить особый стиль к определённой директории сайта или управлять выводом элементов на странице в за...

Memcached на сайте под управлением битрикс, при использовании Веб Окружения Битрикс

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

Уникальный URL для торговых предложений (SKU) с возможностью автоматического выбора предложения при переходе по ссылке.

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

Привязка к разделам в компоненте "Добавления элементов пользователем"

В системе управления 1С Битрикс есть компонент "Форма добавления / редактирования" - который позволяет пользователям доб...

Если предложение SKU в корзине, поменять кнопку добавления на "В корзине"

Данная заметка является дополнением к ранее опубликованной: Если товар в корзине, поменять значение input на "В корзине"...