Инициализация счетчика

Совет. Для работы с 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, описаны в справочнике методов.

Параметры инициализации счетчика

Имя

Значение по умолчанию

Тип

Описание

accurateTrackBounce

true

Boolean | Number

Точный показатель отказов. Параметр может принимать значения:

  • true — включить точный показатель отказов, событие о неотказе засчитывается через 15000 мс (15 с);
  • false — не включать точный показатель отказов;
  • <N> (целое число) — включить точный показатель отказов, событие о неотказе засчитывается через <N> мс
childIframe false Boolean Признак записи содержимого iframe без счетчика в дочернем окне

clickmap

true

Boolean

Признак сбора данных для карты кликов

defer

false

Boolean

Признак отключения автоматической отправки данных при инициализации счетчика

ecommerce false

Boolean | String | Array

Сбор данных электронной коммерции.

  • true — включить сбор данных электронной коммерции. Равносильно значению dataLayer (если опция включена в интерфейсе Метрики). Передача данных производится через JavaScript-массив с именем dataLayer в глобальном пространстве имен (window.dataLayer).
  • false — отключить сбор данных электронной коммерции Ecommerce;
  • <objectName> (String) — включить сбор данных электронной коммерции Ecommerce. Передача данных производится через JavaScript-массив с именем <objectName> в глобальном пространстве имен (window.<objectName>).
  • <array> (Array) — включить сбор данных электронной коммерции. Передача данных производится через JavaScript-массив <array>

params

Object | Array

Параметры визита, передаваемые во время инициализации счетчика.

Для передачи параметров визита в произвольный момент времени используется метод params

userParams

Object

Параметры посетителей сайта, передаваемые во время инициализации счетчика.

Для передачи параметров посетителей в произвольный момент времени используется метод userParams

trackHash

false

Boolean

Признак отслеживания хеша в адресной строке браузера

trackLinks

true

Boolean

Признак отслеживания переходов по внешним ссылкам

trustedDomains Array Признак доверенного домена для записи содержимого дочернего окна iframe. Содержит адрес домена родительского окна

type

0

Number

Тип счетчика. Для РСЯ равен 1

webvisor

false

Boolean

Признак использования Вебвизора

triggerEvent

false

Boolean

Признак проверки готовности счетчика

sendTitle

true

Boolean

Запись заголовков. Если в заголовках есть приватные данные, при инициализации счетчика укажите значение false: sendTitle: false.

Проверка инициализации счетчика

Определить, готов ли счетчик к работе, можно с помощью специального 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>

Здесь XXXXXX — номер счетчика Метрики.

Собираемые данные могут отличаться в зависимости от типа кода счетчика. Подробно см. раздел Данные, которые собирает счетчик Яндекс Метрики.

Внутри каждого тега можно подключить сразу несколько счетчиков, аналогично тому, как это описано в разделе install-several-counters.html#counter-initialize.

Обратите внимание: служба поддержки не обзванивает пользователей. Не следуйте указаниям людей, которые вам звонят и представляются службой поддержки Яндекс Метрики.