Типове завдання цілей аналітики для будь-якого сайту.
Практично кожен проект в інтернеті підключений до аналітики та метрики. Це топові інструменти, які дозволяють відслідковувати результати відвідування сайту, збирати цілі.
Часто для розробників стоїть завдання реалізувати збирання цілей, налаштування яких відбувається не тільки на стороні аналітики, але також на стороні сайту. Основна складність полягає в тому, щоб викликати події у разі успішного надсилання повідомлення, а не просто кліка на кнопку відправити.
Подія submit не вирішує це завдання?
Багато розробників-початківців вирішують дану задачу за допомогою своєї події submit для form.
Такий код працюватиме, відправлятиме цілі в аналітику, але кількість реально відправлених заявок буде значно меншою, ніж подій, які надійдуть в аналітику. Подія submit спрацьовуватиме завжди, коли відвідувач натискатиме на кнопку відправити, незалежно від результату валідації полів.
Таким чином, порожня форма може відправити цілі в аналітику. У разі статистика буде не достовірною.
Як збирати цілі для аналітики на Modx Revolution?
Для Modx Revolution збирання цілей в аналітику можна реалізувати кількома способами.
Найчастіше для розробки форм використовують компоненти FormIt і FormAjax які йдуть у складанні Modx Revolution.
Дані компоненти мають подію надсилання повідомлення af_complete, яке можна відловити та дізнатися про його статус.
Залежно від статусу (успішне відправлення чи ні) можна буде передавати подію в аналітику. Через цю подію можна отримати ідентифікатор форми, щоб визначити, яка форма спрацьовує.
Наочний приклад збору подій для форм Modx:
$(document).on('af_complete', function(event, response) {
var form = response.form;
if (form.attr('id') == 'master') { // визначаємо ідентифікатор форми
if (response.success) { // перевіряємо форму відправлено успішно чи ні
dataLayer.push({'event':'form_quote'}) // подія для цілей аналітики
}
}
});
Сам ідентифікатор форми визначається в тег form через атрибут id.
Не забувайте, що цей приклад написаний через jquery, код треба вставляти після підключення бібліотеки.
Якщо у вас виникли складності чи додаткові питання, пишіть у коментарі або залишайте заявку на сайті про співпрацю, ми допоможемо вирішити завдання!
Коментарі