Изменения

Перейти к навигации Перейти к поиску

Веб-аналитика

6596 байт добавлено, 13:19, 5 декабря 2019
Полный список событий
[[Категория:Плагины]][[Категория:Статистика и отчёты]]
'''Веб-аналитика''' — функция системы бронирования билетов онлайн {{NameSystemLink}} для отслеживания действий пользователя во время процесса поиска и бронирования авиабилетов.
Для отслеживания действий пользователя во время процесса поиска и бронирования авиабилетов,
в {{NameSystemLink}} используется система событий, позволяющая передавать данные в различные сервисы веб-аналитики,
такие как '''Яндекс.Метрика''', '''Google Analytics''', а так же с возможностью также обеспечивает возможность настроить передачу данных в любые другие сервисы.
==Принцип работы==
[[Файл:Идентификатор_цели.jpeg|thumb|300px|Идентификатор цели]]
Для передачи информации в сервисы веб-аналитики, вызванные действиями пользователя javascript-события необходимо «отследить»,получить из них желаемую информацию и сделать соответствующие обращения к сервисам веб-аналитики.
Пример достижения целей в сервисе '''Яндекс.Метрика''':
<source lang="javascript" style="width: 40%">
$(document).on('analytics.checkout.booking.book', function (event, data) {
if (typeof yaCounterXXXXXX !== 'undefined') { yaCounterXXXXXX.reachGoal('ИДЕНТИФИКАТОР_ЦЕЛИ_X'); }
});
$(document).on('analytics.checkout.booking.buy', function (event, data) {
if (typeof yaCounterXXXXXX !== 'undefined') { yaCounterXXXXXX.reachGoal('ИДЕНТИФИКАТОР_ЦЕЛИ_Y', data); }
});
</source>
Где ''XXXXXX'' — номер счетчика Яндекс.Метрики, ''ИДЕНТИФИКАТОР_ЦЕЛИ_X'' и ''ИДЕНТИФИКАТОР_ЦЕЛИ_Y'' —
идентификаторы двух разных целей в метрикеЯндекс.Метрике, а <code>data</code> — дополнительные параметры, которые в данном случае передаются
как [https://yandex.ru/support/metrika/data/visit-params.xml Параметры визита].
 
Пример вызова события в сервисе '''Google Analytics''':
 
<source lang="javascript" style="width: 40%">
$(document).on('analytics.checkout.booking.book', function (event, data) {
ga('send', {
hitType: 'event',
eventCategory: 'ПРОИЗВОЛЬНОЕ_НАЗВАНИЕ_КАТЕГОРИИ_X',
eventAction: 'ПРОИЗВОЛЬНОЕ_НАЗВАНИЕ_ДЕЙСТВИЯ_X',
eventLabel: data
});
});
 
$(document).on('analytics.checkout.booking.buy', function (event, data) {
ga('send', {
hitType: 'event',
eventCategory: 'ПРОИЗВОЛЬНОЕ_НАЗВАНИЕ_КАТЕГОРИИ_Y',
eventAction: 'ПРОИЗВОЛЬНОЕ_НАЗВАНИЕ_ДЕЙСТВИЯ_Y',
eventLabel: data
});
});
</source>
== Полный список событий ==
{| class="wikitable" style="width:60%"
!width="17%" style="padding: 10px;"| СобытиеКод события
!width="18%" style="padding: 10px;"| Параметры
!width="11%" style="padding: 10px;"| Описание
|-
| analytics.searchForm.additionalParameters.carriers.value
| <code>value</code>: массивстрока, список авиакомпаний
| Поле «Авиакомпании”, в блоке «Еще параметры”
|-
| Опция «Искать ±3 дня» (окружные даты)
|-
| analytics.searchForm.search.validationError
| -
| Ошибка валидации формы поиска
| <code>value</code>: <code>true</code> или <code>false</code>
| Открытие / закрытие блока со сравнительной таблицей перелётов
|-
| analytics.searchResults.fastSearchForm.active
| <code>value</code>: <code>true</code> или <code>false</code>
| Открытие / закрытие блока с формой поиска на результатах поиска
|-
| analytics.searchResults.fastSearchForm.active
| <code>name</code>: название фильтра, <code>value</code>: значение фильтра
| Фильтры поисковой выдаче
|-
| analytics.searchResults.resultsError
| -
| При поиске произошла ошибка
|-
| analytics.searchResults.noFlights
| -
| Поиск не дал результатов (нет рейсов)
|-
| analytics.checkout.customer.needNewAccount.active
| -
| Переход к оплате заказа
|-
| analytics.checkout.booking.paid
| -
| Заказ был полностью оплачен и пользователь открыл страницу с заказом. [http://support.nemo.travel/ru/%D0%92%D0%B5%D0%B1-%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D1%82%D0%B8%D0%BA%D0%B0#.D0.9E.D1.82.D1.81.D0.BB.D0.B5.D0.B6.D0.B8.D0.B2.D0.B0.D0.BD.D0.B8.D1.8F_.D1.81.D0.BE.D0.B1.D1.8B.D1.82.D0.B8.D1.8F_.22.D0.97.D0.B0.D0.BA.D0.B0.D0.B7_.D0.B1.D1.8B.D0.BB_.D0.BF.D0.BE.D0.BB.D0.BD.D0.BE.D1.81.D1.82.D1.8C.D1.8E_.D0.BE.D0.BF.D0.BB.D0.B0.D1.87.D0.B5.D0.BD.22 Подробнее]
|-
| analytics.checkout.services.disableExtservices.active
|-
| analytics.checkout.services.alphaInsurance.value
| <code>value</code>: строка или массив, коды выбранных продуктов
| Выбор продукта (-ов) АльфаСтрахования
|-
|-
| analytics.checkout.services.ervInsurance.value
| <code>value</code>: строка или массив, коды выбранных продуктов
| Выбор продукта (-ов) ERV Страхования
|-
| analytics.checkout.services.ervInsurance.supplementary.value
| <code>value</code>: строка или массив, коды выбранных продуктов
| Выбор дополнительного (-ых) продукта (-ов) ERV Страхования
|-
|}
== Пример интеграции с сервисом Яндекс.Метрикой Метрика ==
[[Файл:Код_счетчика_метрики.jpeg|thumb|300px|Код счетчика]]
Для отслеживания действий пользователей на сайте с помощью сервиса Яндекс.МетрикиМетрика, необходимо:* Зарегистрироваться в сервисе и получить код счетчика метрики('''флаг "Асинхронный код" должен быть отключен''').* Полученный код необходимо поместить в код страницы между тегами <code><body></body></code>, '''как можно ближе к открывающему тегу''' <code><body></code>. В рамках Nemo CMS данный код может быть размещен в одном из шаблонов сайта, в разделе настроек ''Управление сайтом → Nemo CMS → Шаблоны''.* В настройках счетчика в панели администрирования сервиса Яндекс.Метрика добавить необходимые цели, указав произвольное название цели, в . В качестве значения «Тип условия» выбрать «JavaScript-событие» и указать произвольный «Идентификатор цели"цели», который в дальнейшем будет использован в коде отслеживания событий.* Добавить на страницу в шаблон, в который ранее был добавлен счетчик Яндекс.Метрики, код отслеживания нужных событий (код . Код отслеживания событий при этом должен располагаться в шаблоне ниже кода счетчика)Яндекс.Метрики:
<source lang="javascript" style="width: 40%">
function yandexScripts($) {
$(document).on('analytics.searchForm.tripType.value', function (event, data) {
if (typeof yaCounterXXXXXX !== 'undefined') { yaCounterXXXXXXXX.reachGoal('идентификатор_цели_смены_типа_маршрута', data); }
});
$(document).on('analytics.checkout.booking.book', function (event, data) {
if (typeof yaCounterXXXXXX !== 'undefined') { yaCounterXXXXXXXX.reachGoal('идентификатор_цели_бронирования', data); }
});
};
if (typeof require == 'function') {
require(['jquery'], yandexScripts);
}
else {
yandexScripts($);
}
</source>
 
=== Отслеживания события "Заказ был полностью оплачен" ===
 
Отслеживание события "Заказ был полностью оплачен" должно происходить с помощью определенного кода:
<source lang="javascript" style="width: 40%">function yandexScripts($) { $(document).on('analytics.checkout.booking.buypaid', function (event, data) { if (typeof yaCounterXXXXXXXX !== "undefined") { yaCounterXXXXXXXX.reachGoal('aидентификатор_цели_оплаты'); } else { var interval = setInterval(function () { if (typeof yaCounterXXXXXXXX !== "undefined") { clearInterval(interval); yaCounterXXXXXXXX.reachGoal('aидентификатор_цели_оплаты'); } }, data200); }
});
};
}
</source>
 
== Пример интеграции с сервисом Google Analytics ==
 
[[Файл:Создание_цели_google.jpeg|thumb|300px|Создание цели в сервисе Google Analytics]]
 
Для отслеживания действий пользователей на сайте с помощью сервиса Google Analytics, необходимо:
* Зарегистрироваться в сервисе и получить код аналитики.
* Полученный код необходимо поместить в код страницы между тегами <code><body></body></code>, '''как можно ближе к открывающему тегу''' <code><body></code>. В рамках Nemo CMS данный код может быть размещен в одном из шаблонов сайта, в разделе настроек ''Управление сайтом → Nemo CMS → Шаблоны''.
* В панели администрирования сервиса Google Analytics добавить необходимые цели, указав тип цели как «Событие», категорию события «analytics», а действие событие установить равным коду события из Nemo (например, <code>analytics.checkout.booking.buy</code>).
* Добавить в шаблон, в который ранее был добавлен код аналитики, код отслеживания нужных событий. Код отслеживания событий при этом должен располагаться в шаблоне ниже добавленного кода аналитики:
<source lang="javascript" style="width: 40%">
function googleScripts($) {
$(document).on('analytics.searchForm.tripType.value', function (event, data) {
ga('send', {
hitType: 'event',
eventCategory: 'analytics',
eventAction: 'analytics.searchForm.tripType.value',
eventLabel: data
});
});
 
$(document).on('analytics.checkout.booking.book', function (event, data) {
ga('send', {
hitType: 'event',
eventCategory: 'analytics',
eventAction: 'analytics.checkout.booking.book',
eventLabel: data
});
});
 
$(document).on('analytics.checkout.booking.buy', function (event, data) {
ga('send', {
hitType: 'event',
eventCategory: 'analytics',
eventAction: 'analytics.checkout.booking.buy',
eventLabel: data
});
});
};
if (typeof require == 'function') {
require(['jquery'], googleScripts);
}
else {
googleScripts($);
}
</source>
 
 
== Точность ==
 
Данные в системе бронирования практически никогда полностью не совпадают с данными, учтенными в системах веб-аналитики. Системы веб-аналитики отображают приблизительную картину. Для точного учета продаж следует использовать отчеты системы бронирования.
 
==См. также==
* [[Модуль метрики]]

Навигация

'