new

eCommSender

Компонент для отправки данных в сервисы электронной коммерции.
Автор дополнения
Артур Шевченко
Пакетов
9
Закачек
2 426
Обычно отвечает в течение нескольких дней
Автор дополнения
Пакетов
9
Закачек
2 426
Обычно отвечает в течение нескольких дней
Версия 1.0.0-beta3
Дата выпуска 23.07.2025
Загрузки 0
Просмотры 20
Внимание, этот компонент требует версию PHP 7.4 или выше! Если ваш сайт использует PHP ниже требуемого, установка этого дополнения может его сломать.
Внимание, этот компонент требует версию MODX не ниже 2.6 !
Зависимости:
1. UniversalEventBus

Как пользоваться:
1. Создать копию файла core/components/ecommsender/services/config.inc.php и изменить параметры
* templateIds — содержит массив id шаблонов ключевых страниц (корзина, форма заказа, страница благодарности)
* chunks — содержит массив шаблонов структуры данных для различных событий
* payedStatuses — содержит массив, где ключами являются id способов оплаты, а значениями — id статусов
* paymentKeyParams — содержит массив, где ключами являются id способов оплаты, а значениями — параметр в ссылке на оплату содержащий ключ оплаты
* counterId — id счетчика метрики (актуально только при использовании Яндекс метрики).
* measurementProtocolToken — токен для передачи события purchase в случае невозврата пользователя на сайт
после оплаты (актуально только при использовании Яндекс метрики).

2. Указать путь к вашему файлу конфигурации в системных настройках.
3. Установить код метрики на сайт.

После этого будут доступны следующие события:
* click
* detail
* add
* remove
* view_cart
* initiate_checkout
* order_created
* dl_purchase
* purchase

!!! ВАЖНО!!! События dl_purchase и purchase являются взаимоисключающими,
т.е. если было отправлено одно из них, второе отправлено не будет.

Для отслеживания событий просмотра списка товаров (impressions) необходимо каждому списку добавить следующие атрибуты:
* data-ecs-list
* data-ueb-event=«show»
* data-ueb-once=«1»

Для отслеживания просмотра миникорзины, если она у вас сделана в модальном окне, нужно добавить следующие атрибуты:
* data-ueb-event=«open»
* data-ueb-params=«eventName:ecsViewMiniCart»
И добавить в системные настройки селектор открытой миникорзины.

Для отслеживания открытия окна быстрого заказа нужно добавить следующие атрибуты:
* data-ueb-event=«open»
* data-ueb-params=«eventName:ecsFastOrderWithCart»
И добавить в системные настройки селектор открытого окна быстрого заказа.

Чтобы не отправлять данные о каких-либо событиях, можно просто оставить пустым имя чанка в конфигурации.
Чтобы не отслеживать события, нужно отключить привязку к системным событиям в настройках плагина ecsEventWatcher.
Для отмены отслеживания кликов, оставьте пустым системную настройку с селектором ссылок.

Системные события:
1. OnGetEcsWebConfig — можно добавить свои параметры в веб-конфиг
$object->webConfig['paramName'] = 'paramValue';
2. OnGetEcsHandleEvent — для обработки кастомных событий, можно вернуть массив с данными для добавления в dataLayer
$object->output = ['eventName' => 'eventName', 'eventData' => 'eventData'];

Для внесения изменений в имеющиеся события (click, detail и т.д.) корректируйте содержимое чанков, предварительно скопировав их.

1.0.0-beta3

  • Добавил проверку наличия файла конфигураци.
  • Добавил события JS 'ecommsender:click' и 'ecommsender:getlistdata'
  • Уточнил данные зааписываемые в localstorage responseOrder

1.0.0-beta2

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

1.0.0-beta

  • Первая сборка.

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