Как добавить счетчик Яндекс Метрики в WORDPRESS

Существует множество способов добавить счетчик Яндекс метрики на сайт, работающий на wordpress:

  • вставить код счетчика яндекс метрики напрямую, через шаблон темы header.php или footer.php (по-умолчанию не рекомендую никому);
  • с помощью готового плагина;
  • через functions.php Вашей темы
  • и др.

В этой небольшой статье рассматривается, как добавить счетчик Яндекс Метрики на сайт с WordPress через functions.php Вашей темы.

Functions.php — это php файл, которым обладает каждая тема для wordpress и который загружается каждый раз, во время просмотра frontend части сайта и в панели администратора.

С помощью functions.php в большинстве тем wordpress подключаются файлы стилей css, необходимые скрипты js. Также через functions.php можно подключить шрифты от google и многое другое.

Больше о принципе работы functions.php Вы можете узнать тут.

По мнению автора способ подключения счётчика метрики wordpress через functions.php — самый оптимальный, но с одной оговоркой. Этот способ целесообразно использовать тогда, когда Вы используете собственную тему или создали дочернюю тему и не собираетесь ее менять.

В противном случае, при обновлении темы файл functions.php будет перезаписан и Вы потеряете внесенные ранее изменения.

Специфику использования дочерних тем достаточно подробно описал многоуважаемый wp-kama. Прочитать можно тут.

1. Чтобы установить счетчик яндекс метрики на сайт с wordpress, прежде всего, его нужно получить. Особенности этой процедуры описывать не вижу смысла, она довольная простая и достаточно подробно описана на сайте яндекс support.

Итак, у Вас есть код счетчика, выглядит он примерно так:

<!-- Yandex.Metrika counter -->
<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(62316352, "init", {
        clickmap:true,
        trackLinks:true,
        accurateTrackBounce:true,
        webvisor:true
   });
</script>
<noscript><div><img src="https://mc.yandex.ru/watch/62316352" style="position:absolute; left:-9999px;" alt="" /></div></noscript>
<!-- /Yandex.Metrika counter -->

2. Откроем через FTP или файловый менеджер Вашего хостинга файл functions.php Вашей темы. Путь к файлу functions.php такой:

/Корневая_директория_сайта/wp-content/themes/Имя_Вашей_темы/functions.php

3. Для того, чтобы разместить счетчик яндекс метрики в футере сайта, напишем функцию и используем хук wp_footer, который отвечает в wordpress за вывод событий и скриптов в футере. Функцию и хук добавим в ранее открытый файл functions.php.

Примечание: Мнения о том, где стоит размещать код счётчика Яндекс метрики, разнятся. Мне субъективно удобнее размещать счетчики в подвале сайта. Для тех, кто хочет разместить счетчик метрики в хедере, достаточно заменить хук wp_footer на wp_head.

4. Сначала напишем функцию в файле и назовем её yandex_metrika_counter()

function yandex_metrika_counter() {
?>
<!-- Yandex.Metrika counter -->
<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(62316352, "init", {
        clickmap:true,
        trackLinks:true,
        accurateTrackBounce:true,
        webvisor:true
   });
</script>
<noscript><div><img src="https://mc.yandex.ru/watch/62316352" style="position:absolute; left:-9999px;" alt="" /></div></noscript>
<!-- /Yandex.Metrika counter -->
<?php
}

5. Теперь добавим перед функцией хук add_action(‘wp_footer’, ‘yandex_metrika_counter’,5), Получим следующую картину.

add_action('wp_footer', 'yandex_metrika_counter',5);

function yandex_metrika_counter() {
?>
<!-- Yandex.Metrika counter -->
<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(62316352, "init", {
        clickmap:true,
        trackLinks:true,
        accurateTrackBounce:true,
        webvisor:true
   });
</script>
<noscript><div><img src="https://mc.yandex.ru/watch/62316352" style="position:absolute; left:-9999px;" alt="" /></div></noscript>
<!-- /Yandex.Metrika counter -->
<?php
}

6. Сохраняем изменения и проверяем работу сайта. Если всё сделано правильно, то после просмотра Вашего сайта в панели управления Яндекс Метрикой Вы увидите изменения в статистике.

Оставьте комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Прокрутить вверх