Частенько возникает потребность анализировать сайт, проверять посещения, следить за пользовательскими факторами. Это необходимо для улучшения сайта, лучшего понимания его устройства и SEO. В случае с WordPress проблем с подключением Яндекс Метрики или Google Analytics практически нет. Можно установить плагины, которые автоматически добавят необходимое, можно просто внести код в нужный файл. Лично я предпочитаю нужный код вынести в отдельный плагин. Сегодня расскажу, как это сделать через файл функций.

P. S. Куда более эффективный и правильный способ — вынесение кода в отдельный плагин. На производительности сайта это никак не скажется, позволит удобнее работать, к тому же, ваш код не будет зависеть от темы. Все, что напрямую не завязано на тему, лучше выносить в плагин. И это не намного более тяжелая задача, о которой расскажу чуть позже.

Добавляем Метрику или Google Anaytics в functions.php

Давайте сначала разберемся, где взять счетчики. Это задача простая, здесь требуется только зарегистрироваться и получить код. Я не буду описывать, как это сделать. Описание есть в справке на официальных сайтах: https://metrika.yandex.ru/ и https://analytics.google.com/ В общем, получение кода проблем не составит. А лишнее пустословие ни к чему.

Вам же важно подключить аналитику именно через functions.php. Пора рассказать как это сделать, но для начала разжую, в каких случаях реально требуется использовать данный метод:

  1. Вы не желаете использовать лишние плагины. Иногда напрасно, плагины — удобная вещь, но порой перегружены ненужными функциями либо работают не так, как ожидали. Причина уважительная.

  2. Нет желания захламлять header.php или footer.php. Вполне объективная причина. Пак отдельный функций перенести проще, чем выковыривать отдельные фрагменты кода из разных файлов.

  3. Есть дочерняя тема. Весьма распространенная причина. Создание дочерней темы очень важно, помогает уберечь от порчи структуры сайта при обновлениях, потери стилей. Но не всегда в дочернюю тему переносятся файлы шапки или подвала.

  4. Просто хочется позаморачиваться. Самая уважительная причина из всех. Сам такой.

Основные причины перечислил, пришло время добавлять Метрику или Аналитику через functions.php

Все крайне просто

Вообще, идеи подобных текстов рождаются, когда вдруг обнаруживаю, что есть кое-какая информация, но в сети практически нет. Даже удивительно, ведь идея встроить Метрику или Analytics через functions.php приходит в адекватную голову часто. Конечно, опытный пользователь WordPress проблем в этом не увидит, а не опытного отправят… за плагином.

В общем, есть простое решение — хуки (крючки). Фактически, это позволяет избежать написания сложных функций, не плодить исполняемые файлы и не заморачиваться. Достаточно указать нужный hook и система поймет, куда нужно встроить код.

Встраивать системы аналитики предпочитают в раздел head. Многие рекомендуют в подвал, но тогда падает качество сбора информации. Потому, будем рассматривать на примере встраивания в head.


Добавление счетчика Метрики через fuctions.php

Встраиваем Метрику через functions.php

В первую очередь добавляем счетчик и получаем код. Не забудьте включить Вебвизор, если нужен.


Открываем файл functions.php темы и добавляем такой код:

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

Разберем по порядку.

Функция add_action добавляет определенное действие посредством использования хука (крючка). То бишь, wp_head – хук, который определяет, где будет совершено действие, в данном случае — <head> </head>, добавленное мной «wp_metrika» – функция, которую я выведу дальше. Не забывайте перед началом кода ставить тег ?>, это завершит блок php. После вставки скрипта Метрики введите <?php и поставьте «}», чтобы завершить функцию.

Готово, Метрика добавлена через functions.php. Кстати, если решили вставлять код через подвал, используйте хук wp_footer. В таком случае функция будет добавлена файл footer.php.

Встраиваем Google Analytics через functions.php

Есть ли в данном случае серьезные отличия? Конечно нет, принцип совершенно тот же. Создаем действие, указываем хук wp_head, создаем новую функцию. Блок выше сработает и для Аналитики, только создайте новую функцию, иначе конфликты гарантированы.

Дополнительные рекомендации

Создавайте функции только с уникальным названием, чтобы вероятность того, что окажутся в других плагинах или движке, сводилась к нулю. Как видите, добавлять счетчики через файл functions.php довольно легко. Пользуйтесь. Это гораздо проще, чем редактирование файлов темы.

Ваша оценка будет первой!

Добавить комментарий

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