790
10.68
11.29
за сайт
- Проверено Modstore
- Бесплатные будущие обновления
- Работа на тестовом и публичном домене
- 12 месяцев тех. поддержки
Внимание, этот компонент несовместим с MODX 3.
Sendsay — компонент передачи данных в сервис email-маркетинга Sendsay.
!!! ВАЖНО!!! Требуется версию PHP >= 7.4
Возможности:
1. Подписка на рассылку
2. Отправка событий:
2.1. Просмотр категории;
2.2. Просмотр товара;
2.3. Добавление в корзину;
2.4. Изменение корзины;
2.5. Удаление из корзины;
2.6. Очистка корзины;
2.7. Оформление заказа;
2.8. Изменение статуса заказа;
2.9. Регистрация на сайте после активации пользователя (OnUserActivate);
2.10 Авторизация на сайте (OnWebLogin).
Обязательные настройки:
1. Указать в системной настройке ss_api_key ключ доступа к API.
2. Указать в системной настройке ss_account_id ID аккаунта в Sendsay.
Настройки для возможности подписки на рассылки.
1. Добавить в форму подписки поля
2. Опционально можно добавить поля с именами base[someKey] и custom[someKey].
Массив `base` содержит базовую информацию о пользователе
Фамилия — lastName
Имя — firstName
Отчество — middleName
Пол — gender (1 — мужской, 0 — женский)
Дата рождения — birthDate
Город — city
Адрес — address
Индекс — postalCode
Часовой пояс — tz
Страна — country (коды стран можно посмотреть в ЛК Sendsay)
Массив `custom` содержит дополнительную информацию о пользователе, т.е. те поля которые вы создали сами.
3. Использовать хук для FormIt `SendsaySubscibe`.
Настройка отправки событий в модуль Продажи.
!!! ВАЖНО!!! Ваш тариф должен включать в себя модуль Продажи.
!!! ВАЖНО!!! Необходимо установить miniShop2, SendIt.
1. Указать в системной настройке `ss_account_id` ID списка для рассылки писем пользователя сделавшим заказ.
2. Указать в системной настройке `ss_sale_script` код скрипта из сервиса Sendsay.
3. Сверить сопоставление статусов в системной настройке ss_statuses, значение слева от == ID статуса на сайте, значение справа — ID статуса в сервисе.
4. Если нужно удалять заказчиков из других списков, укажите из ID в системной настройке `ss_delete_from_lists`.
Для разработчиков.
Для внесения изменений в логику работы JS можно указать другой путь к файлу в системной настройке `ss_frontend_js`.
Основной код компонента расположен в папке `core/components/sendsay/services` с комментариями.
Компонент использует composer для автозагрузки классов по стандарту PSR-4. Все классы лежат в папке `core/components/sendsay/services/`.
Компонент не создаёт таблиц в БД.
Класс ModxSendsay\ApiClient содержит список публичных методов для работы с подписчиками и отправки событий.
Класс ModxSendsay\Base является базой для классов Sales и Subscriber.
Класс ModxSendsay\Subscriber предназначен для создания и редактирования контактов. Подготавливает данные для отправки в Sendsay.
Класс ModxSendsay\Sales предназначен для управления товарами, заказами, корзинами и категориями. Подготавливает данные для отправки в Sendsay.
Класс ModxSendsay\Feed предназначен для формирования фида. Для автоматизации процесса следует добавить в планировщик задачу на запуск скрипта из папки cron.
Класс ModxHelpers\Request реализует метод отправки запросов через CURL.
Класс ModxHelpers\Logging позволяет записывать логи работы скриптов в файл.
Класс ModxHelpers\QueueManager позволяет работать с очередями добавлять и читать сообщения.
Компонент генерирует следующие системные события:
1. ssOnBeforeParseOffer — срабатывает до парсингом оффера, позволяет поменять любые данные оффера через $feed->offer (\ModxSendsay\Feed $feed), так же есть прямой доступ к массиву данные через array $offer;
2. ssOnBeforeGetProducts,ssOnGetEventData,ssOnBeforeGetModificationOptions — позволяет изменить запрос на получение соответствующих данных используя переменную \xpdoQuery $query;
3. ssOnGetEventData — позволяет менять данные событий перед отправкой в Sendsay; Доступны переменные \ModxSendsay\Sales $sales ($sales->eventData) и array $eventData;
!!! ВАЖНО!!! Требуется версию PHP >= 7.4
Возможности:
1. Подписка на рассылку
2. Отправка событий:
2.1. Просмотр категории;
2.2. Просмотр товара;
2.3. Добавление в корзину;
2.4. Изменение корзины;
2.5. Удаление из корзины;
2.6. Очистка корзины;
2.7. Оформление заказа;
2.8. Изменение статуса заказа;
2.9. Регистрация на сайте после активации пользователя (OnUserActivate);
2.10 Авторизация на сайте (OnWebLogin).
Обязательные настройки:
1. Указать в системной настройке ss_api_key ключ доступа к API.
2. Указать в системной настройке ss_account_id ID аккаунта в Sendsay.
Настройки для возможности подписки на рассылки.
1. Добавить в форму подписки поля
<input type="hidden" name="lists[pl2312]" value="set"> - где, pl2312 - id списка для рассылки, а value может быть set - добавление в список или delete - удаление из списка.
<input type="hidden" name="newbie.confirm" value="1"> - если нужно отправить подписчику письмо для подтверждения подписки
<input type="hidden" name="newbie.letter.confirm" value="123"> - номер шаблона информационного письма
<input type="hidden" name="newbie.letter.no-confirm" value="124"> - номер шаблона информационного письма
Подробнее о подтверждении читайте в документации https://sendsay.ru/api/api.html#Cоздать-подписчика-Обновить-данные-подписчика-КД
<input type="email" name="email"> - email пользователя.2. Опционально можно добавить поля с именами base[someKey] и custom[someKey].
Массив `base` содержит базовую информацию о пользователе
Фамилия — lastName
Имя — firstName
Отчество — middleName
Пол — gender (1 — мужской, 0 — женский)
Дата рождения — birthDate
Город — city
Адрес — address
Индекс — postalCode
Часовой пояс — tz
Страна — country (коды стран можно посмотреть в ЛК Sendsay)
Массив `custom` содержит дополнительную информацию о пользователе, т.е. те поля которые вы создали сами.
3. Использовать хук для FormIt `SendsaySubscibe`.
Настройка отправки событий в модуль Продажи.
!!! ВАЖНО!!! Ваш тариф должен включать в себя модуль Продажи.
!!! ВАЖНО!!! Необходимо установить miniShop2, SendIt.
1. Указать в системной настройке `ss_account_id` ID списка для рассылки писем пользователя сделавшим заказ.
2. Указать в системной настройке `ss_sale_script` код скрипта из сервиса Sendsay.
3. Сверить сопоставление статусов в системной настройке ss_statuses, значение слева от == ID статуса на сайте, значение справа — ID статуса в сервисе.
4. Если нужно удалять заказчиков из других списков, укажите из ID в системной настройке `ss_delete_from_lists`.
Для разработчиков.
Для внесения изменений в логику работы JS можно указать другой путь к файлу в системной настройке `ss_frontend_js`.
Основной код компонента расположен в папке `core/components/sendsay/services` с комментариями.
Компонент использует composer для автозагрузки классов по стандарту PSR-4. Все классы лежат в папке `core/components/sendsay/services/`.
Компонент не создаёт таблиц в БД.
Класс ModxSendsay\ApiClient содержит список публичных методов для работы с подписчиками и отправки событий.
Класс ModxSendsay\Base является базой для классов Sales и Subscriber.
Класс ModxSendsay\Subscriber предназначен для создания и редактирования контактов. Подготавливает данные для отправки в Sendsay.
Класс ModxSendsay\Sales предназначен для управления товарами, заказами, корзинами и категориями. Подготавливает данные для отправки в Sendsay.
Класс ModxSendsay\Feed предназначен для формирования фида. Для автоматизации процесса следует добавить в планировщик задачу на запуск скрипта из папки cron.
Класс ModxHelpers\Request реализует метод отправки запросов через CURL.
Класс ModxHelpers\Logging позволяет записывать логи работы скриптов в файл.
Класс ModxHelpers\QueueManager позволяет работать с очередями добавлять и читать сообщения.
Компонент генерирует следующие системные события:
1. ssOnBeforeParseOffer — срабатывает до парсингом оффера, позволяет поменять любые данные оффера через $feed->offer (\ModxSendsay\Feed $feed), так же есть прямой доступ к массиву данные через array $offer;
2. ssOnBeforeGetProducts,ssOnGetEventData,ssOnBeforeGetModificationOptions — позволяет изменить запрос на получение соответствующих данных используя переменную \xpdoQuery $query;
3. ssOnGetEventData — позволяет менять данные событий перед отправкой в Sendsay; Доступны переменные \ModxSendsay\Sales $sales ($sales->eventData) и array $eventData;
1.0.10-pl
- Добавил передачу url товара в фид.
1.0.9-pl
- Добавил очистку кэша очередей в cron.php.
- Добавил передачу email при оформлении заказа.
- Поменял видимость свойства client для обеспечения доступа к API извне.
1.0.8-pl
- Системное событие ssOnOrderSubscribe.
1.0.7-pl
- Исправил ошибку пустых псевдонимов полей.
1.0.6-pl
- Сделал рефакторинг класса Sales
- Исправил ошибку в методе подготовке данных списков, которая мешала удалять подписчиков из списка.
1.0.5-pl
- Добавил системную настройку ss_error_field_name для указания поля вывода ошибки.
- Добавил системную настройку ss_field_aliases для задания псевдонимов полей.
1.0.4-pl
- Добавил системную настройку ss_newbie_confirm_letter для указания номера шаблона письма-подтверждения.
1.0.3-pl
- Мелкие правки.
1.0.2-pl
- Исправил ошибку пустой корзины.
- Добавил события ssOnBeforeParseOffer,ssOnBeforeGetProducts,ssOnGetEventData,ssOnBeforeGetModificationOptions,ssOnGetEventData.
- Добавил класс генерации фида и скрипт для планировщика, генерирующий фид.
- Сделал очереди файловыми.
1.0.1-pl
- Адаптировал под miniShop2 2.9.3.
1.0.0-pl
- Убрал зависимость от SendIt.
1.0.0-beta
- Первая сборка.


Последние обсуждения в сообществе MODX.pro