Инициализация счетчика
Совет
Для работы с JavaScript API необходимы навыки работы с HTML и JavaScript. Если вы не обладаете такими навыками, обратитесь к разработчику или вебмастеру вашего сайта.
JavaScript-библиотека, отвечающая за работу счетчика, загружается с URL https://mc.yandex.ru/metrika/tag.js
.
Код для подключения библиотеки доступен на странице редактирования счетчика. Библиотека может быть загружена асинхронным (рекомендуется) и синхронным способом, однако, ее функционал при этом остается неизменным.
Для создания и управления счетчиком используется метод ym
. Он создается в коде загрузки:
(function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)};
m[i].l=1*new Date();k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)})
(window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym");
Обязательные аргументы ym
— номер счетчика и имя вызываемой функции. Также в метод могут передаваться аргументы вызываемой функции. Например, для инициализации счетчика нужно передать номер счетчика, имя функции init
и массив ее параметров:
ym(XXXXXX, "init", {clickmap: true, webvisor: true});
Если вы не хотите передавать в функцию параметры, то инициализация будет выглядеть так:
ym(XXXXXX, "init", {});
Часть кода, содержащего основные параметры инициализации, формируется на странице Настройка. Полный список параметров инициализации приведен в таблице.
Функции, которые можно вызвать через метод ym
, описаны в справочнике методов.
Имя |
Значение по умолчанию |
Тип |
Описание |
|
|
Boolean | Number |
Точный показатель отказов. Параметр может принимать значения:
|
|
|
Boolean |
Признак записи содержимого iframe без счетчика в дочернем окне |
|
|
Boolean |
Признак сбора данных для карты кликов |
|
|
Boolean |
Признак отключения автоматической отправки данных при инициализации счетчика |
|
|
Boolean | String | Array |
Сбор данных электронной коммерции.
|
|
— |
Object | Array |
Параметры визита, передаваемые во время инициализации счетчика. Для передачи параметров визита в произвольный момент времени используется метод params |
|
— |
Object |
Параметры посетителей сайта, передаваемые во время инициализации счетчика. Для передачи параметров посетителей в произвольный момент времени используется метод userParams |
|
|
Boolean |
Признак отслеживания изменений хеша в адресной строке браузера |
|
|
Boolean |
Признак отслеживания переходов по внешним ссылкам |
|
— |
Array |
Признак доверенного домена для записи содержимого дочернего окна iframe. Содержит адрес домена родительского окна |
|
|
Number |
Тип счетчика. Для РСЯ равен 1 |
|
|
Boolean |
Признак использования Вебвизора |
|
|
Boolean |
Признак проверки готовности счетчика |
|
|
Boolean |
Запись заголовков. Если в заголовках есть приватные данные, при инициализации счетчика укажите значение |
Проверка инициализации счетчика
Определить, готов ли счетчик к работе, можно с помощью специального JavaScript события. При этом необходимо добавить параметр triggerEvent
со значением true
в код счетчика:
ym(XXXXXX, "init", {triggerEvent: true});
Для jQuery можно использовать следующий пример кода до момента инициализации счетчика:
jQuery(document).on('yacounterXXXXXXinited', function () {
console.log('счетчик yaCounterXXXXXX можно использовать');
});
Подключение счетчика с помощью системы управления тегами
Счетчики Яндекс Метрики допускают подключение с помощью систем управления тегами (альтернативные названия: диспетчеры тегов, контейнеры тегов). Такие системы позволяют хранить весь необходимый HTML/JavaScript-код на внешнем сервере, и подключать его на веб-страницы с помощью небольших фрагментов кода. При этом изменения в подключаемом коде не требуют внесения изменений в код страниц.
Системы управления тегами обычно поддерживают два типа включаемого кода счетчиков: JavaScript и изображение. Яндекс Метрика поддерживает счетчики обоих типов. Для их подключения с помощью систем управления тегами используйте фрагменты кода со страницы Настройка (вкладка Счетчик).
<script type="text/javascript">
(function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)};
m[i].l=1*new Date();k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)})
(window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym");
ym(XXXXXX, "init", {<параметры инициализации>});
</script>
<img src="https://mc.yandex.ru/watch/XXXXXX" style="position:absolute; left:-9999px;" alt="" />
Здесь XXXXXX
— номер счетчика Метрики.
Собираемые данные могут отличаться в зависимости от типа кода счетчика. Подробно см. раздел Данные, которые собирает счетчик Яндекс Метрики.
Внутри каждого тега можно подключить сразу несколько счетчиков, аналогично тому, как это описано в разделе Установка нескольких счетчиков на сайт.