Как установить код счетчика Яндекс.Метрики в отдельном JS-файле

Яндекс.Метрика — полезный ресурс для мониторинга работы сайта, но обычно её предлагают внедрять непосредственно в код страницы. Для одностраничных сайтов это ещё разумно, но для сайта с многими страницами, лишний код в каждой странице сайта — это лишние байты, которые будут передаваться по сети с каждой страницей тогда, как если установить код счетчика Яндекс.Метрики в отдельном JS-файле, этот файл попадёт в кэш браузера и не будет гоняться по Сети с каждой страницей.



Странные предупреждения разработчиков Яндекса об установке кода счетчика Яндекс.Метрики в отдельном JS-файле

Это кажется логичным. Однако в официальной документации Яндекса есть два предупреждения:

  1. Внимание.
    Код счетчика, размещенный в файле на вашем сервере может устареть при обновлении кода на стороне Яндекс.Метрики. Поэтому рекомендуем устанавливать код счетчика на сайт стандартным образом.
    • Интересное заявление, как будьто, если код внедрять на каждую страницу, то при обновлении кода счётчика на стороне Яндекс.Метрики, он автоматически заменится на всех страницах сайта. Сомнительное заявление + менять его в одном файле по любому будет проще. Не знаю, что хотели сказать этим заявлением разработчики Яндекса, но тут я их просто не понимаю.
  2. В случае установки кода Яндекс.Метрики, проверка кода счетчика на сайте не будет работать. На странице со списком счетчиков у счетчика будет статус: — «не установлен на главной странице, но данные поступают».
    • Вот что станно, у меня всё нормально встало и статус счётчика Яндекс.Метрики такой же, как и на сайтах с кодом, установленным «стандартным образом». Тоже какое-то недоразумение, но это всё пустяки!

Код счетчика Яндекс.Метрики можно вполне себе установить в отдельном файле и даже вместе другими JavaScript функциями от других скриптов и всё замечательно работает. Итак,

Как установить код счетчика Яндекс.Метрики в отдельном JavaScript файле

Чтобы подключить код счетчика Яндекс.Метрики на сайт в отдельном файле, выполните действия:

  1. Сначала получите код счётчика Яндекс.Метрики (в официальной инстукции этот пункт почему-то почти последний) =D
  2. Перейдите на вкладку Счетчик и скопируйте из поля содержимое элемента script.
  3. Добавьте этот код в файл, напимер, metrika.js.
    • Пример содержимого файла:
      (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", {
              id:XXXXXX,
              clickmap:true,
              trackLinks:true,
              accurateTrackBounce:true,
              ut:"noindex"
          });
      • Где XXXXXX — номер счетчика Яндекс.Метрики.
  4. Добавьте строку в HTML-код всех страниц сайта:
    <script type="text/javascript" src="/metrika.js"></script>
    • можно в самый конец перед закрывающим тегом </body>
  5. Чтобы счетчик собирал данные о посетителях, у которых отключен JavaScript, добавьте в HTML-код страниц сайта содержимое элемента noscript:
    <noscript><div><img src="https://mc.yandex.ru/watch/XXXXXX" style="position:absolute; left:-9999px;" alt="" /></div></noscript>
    • можно также в конец HTML-документа

После этого всё должно подключаться и работать. Номер счётчика только свой укажите и название файла с кодом счетчика Яндекс.Метрики укажите правильно. =)

Официальная инстукция:
yandex.ru

Заберите ссылку на статью к себе, чтобы потом легко её найти!
Раз уж досюда дочитали, то может может есть желание рассказать об этом месте своим друзьям, знакомым и просто мимо проходящим?
Не надо себя сдерживать! ;)

Старт! Горячий старт на просторы интернета
Старт! Горячий старт на просторы интернета
Старт! Меню