Skip to content

Instantly share code, notes, and snippets.

@anatoly-orlov
Created July 1, 2019 17:05
Show Gist options
  • Save anatoly-orlov/68332d083ee7701e7ee27db0cb821bd4 to your computer and use it in GitHub Desktop.
Save anatoly-orlov/68332d083ee7701e7ee27db0cb821bd4 to your computer and use it in GitHub Desktop.
Описание событий в одном файле
// Идея в том чтобы хранить все события в одном файле и подцеплять нужные в зависимости от подгружаемой страницы или
// совершенного события (не важно на фронте или бэкенде)
//
// Есть несколько проблем:
// 1. Как передавать и считывать переменные - можно или кусок кода прописывать (php, js) или псевдопеременные которые, например будут подставляться в коде
// 2. Проблема с изменением переменных в коде - тут нужны будут тесты для каждого события при каждом мерже
// 3. Трудно прописать все варианты в одном массиве - нужно обсуждать
$events = [
{
// Происходит при регистрации пользователя. Воронка - Регистрация 1
'place' => 'queue', // событие отрабатывается в очереди
'event' => 'after_upload', // после какого event-та отправляется событие, тут нужно все новые события на event-архитектуру вешать?
'code' => "ga('send', 'event', '$user.type', 'registration_switcher_used', '$user.value')" // данные можно брать из события
},
{
// Происходит после нажатия кнопки оставления оффера. Воронка - Покупка PRO
'place' => 'page',
'path' => '/projects/([0-9]+)/',
'pattern' => '#button-offer', // id элемента в html коде или XPath, тут желательно через id работать
'action' => 'onclick',
'code' => "ga('send', 'event', '$user.type', 'offer', '$user.value')"
];
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment