среда, 3 октября 2018 г.

Подписка/Отписка на рассылки Email маркетинг

Актуально для 18 версии Bitrix.
На дату публикации класс для работы с подписками не задокументирован.

if(CModule::IncludeModule("sender")){
        $subscribeList = $_POST['SENDER_SUBSCRIBE_RUB_ID'];
        $contact_id = \Bitrix\Sender\ContactTable::addIfNotExist(
                                array(
                                     'EMAIL' => $_POST['SENDER_SUBSCRIBE_EMAIL']
                                     )
                       );
        $contact = new \Bitrix\Sender\Entity\Contact($contact_id);


        //Отписываемся от рассылок
        $subList = $contact->loadData($contact_id);
        $subList = $subList['SUB_LIST'];
        foreach ($subList as $item){
            $contact->unsubscribe($item);
        }

        //Подписываемся на новый набор рассылок
        foreach ($subscribeList as $item){
            $contact->subscribe($item);
        }
        die(true);

}

Комментариев нет: