Что такое Битрикс и зачем он нужен, я думаю, вам уже давно известно. А вот, что такое Mailchimp, зачем он нужен, как его использовать и как его интегрировать с Битрикс я постараюсь рассказать в этой небольшой статье.
Что такое Mailchimp и зачем он нужен?
MailChimp — простой и удобный инструмент для e-mail- маркетинга, бесплатный сервис для отправки электронной почты. С его помощью Вы можете создавать и конструировать персонализированные письма с профессиональным видом. Mailchimp предлагает бесконечное количество возможностей для интеграции различных CMS (WordPress, Drupal), есть ряд предустановленных решений для интеграции с Twitter и Facebook, также есть достаточно проработанное API для интеграции ваших интернет-проектов.
Внимание! Интеграция с Битрикс!
Но меня больше всего интересует как интегрировать Mailchimp с Битрикс. Что нам нужно? Нужно: добавить юзера в лист рассылки, проверить есть ли данный юзер в списке рассылки и удалить юзера из списка рассылки. Значит требуется сделать 3 функции.
Эти функции используют класс Mailchimp API, поэтому необходимо скачать файл с классом и подключить его перед вызовом этих функций.
require_once(‘lib/MCAPI.class.php’);
Вот код этих функций:
global $api_key;
$api_key = «xxxxxxxxxxxxxxxxxxxxxxxxxxxxx-us2»; // введите тут свой api_key Mailchimp
// функция размещения нового подписчика в листе рассылки // $list_id - id листа рассылки (смотрим в настройках листа в mailchimp) // $merge_vars - ассоциативный массив переменных для листа (Имя юзера, Email и т.д.) // $opt_in - Флаг сообщать юзеру о подписке или нет. // function MC_storeAddress($list_id, $merge_vars, $opt_in=true, $test_unsub=false) { global $api_key; if ($test_unsub) { global $DB; $res = $DB->Query("SELECT `id` FROM `mc_unsubs` WHERE `list_id`='".$list_id."' AND `email`='".$merge_vars["EMAIL"]."'"); if (intval($res->SelectedRowsCount())>0) return false; } $api = new MCAPI($api_key); $user = $api->listSubscribe($list_id, $merge_vars["EMAIL"], $merge_vars, 'html', $opt_in); }
// функция проверки наличия подписчика в листе рассылки function MC_isInList($list_id, $email) { global $api_key; $api = new MCAPI($api_key); $lists_id = $api->listsForEmail($email); if (in_array($list_id, $lists_id)) return true; return false; }
// Функция удаления юзера из списка подписчиков // $delete_member - флаг, обозначающий удалять юзера насовсем из списка // $send_goodbye - отправлять сообщение пользователю о том, что он отписан или нет // $send_notify - отправлять или нет пользователю подтверждение удаления из списка function MC_unsubscribe($list_id, $email, $delete_member=false, $send_goodbye=true, $send_notify=true) { global $api_key; $api = new MCAPI($api_key); $api->listUnsubscribe($list_id, $email, $delete_member, $send_goodbye, $send_notify); }
Эти функции требуется подключить к файлу /bitrix/php_interface/init.php (и не забыть файл с классом MailChimp) и затем уже использовать в коде своего компонента.
Добрый день.
В marketplace.1c-bitrix.ru не планируете добавить свое решение? Чтобы было просто установить, как модуль.
Нет, пока таких желаний не возникало :)
Можете ли вы сделать эти функции на нашем сайте за оплату?
Да, это вполне возможно. Обращайтесь, пожалуйста, через форму обратной связи.