Установка счетчика посещаемости для Joomla

Для лучшего управления сайтом и обнаружения возможных проблем или неудобств пользования им рекомендуется устанавливать счетчики посещаемости. Помимо простейшей статистики визитов и посещения определенных страниц, некоторые из них могут предоставлять дополнительную информацию, позволяющую анализировать поведение пользователей, отображать переходы и т.д. Подобные инструменты предоставляют сервисы Яндекс.Метрика и Google Analytics.

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

Немного слов в защиту этих инструментов.

Влияние на загрузку страниц счетчики оказывают самое минимальное, т.к. подзагружают скрипты, вес которых не превышает 200 байтов. Даже при небольшой скорости интернета пользователи не почувствуют задержек, а если расположить код в самом конце html-страницы, то их загрузка будет производиться после загрузки основного содержимого, когда посетитель уже может работать с информацией.

Что качается снижения посещаемости, то это относится только к некачественным сайтам, которые посетители быстро покидают (имеют высокий показатель отказов). Если после установки скрипта любого счетчика на сайт Вы ощутили снижение трафика, то не торопитесь его удалять. Лучше разберитесь с причинами сложившейся ситуации. Скорее всего, имеются какие-то проблемы, устранение которых повысит качество ресурса.

Примечание автора: Установив счетчик Google Analytics на один из своих сайтов, через несколько недель заметно подрос трафик из поисковых систем по части переходов из google.

Способы установки

Имеется несколько способов разместить скрипт на сайт, работающий на CMS Joomla. Способы работают как для версии 2.5, так для версий серий 3.х.

  • Вывод скрипта с помощью стандартного модуля Joomla HTML-код. Недостаток этого метода заключается в необходимости каждый раз, когда необходимо будет отредактировать модуль, отключать фильтрацию у плагина визуального редактора, что небезопасно.
  • Вставка кода счетчика в основной файл шаблона. Минус этого способа в том, что при использовании 2-х шаблонов для сайта или перехода с одного на другой, придется вручную редактировать главный файл шаблона. Также не получится временного отключить скрипт, если возникнет такая необходимость (снять с публикации).
  • Применение специально созданного модуля.

Первые два приведенных варианта, в силу упомянутых недостатков, рассматриваться не будут.

Создание модуля

Модуль состоит из трех файлов:

  • index.html – пустой файл для скрытия файловой структуры папки модуля;
  • mod_YandexMetrika.xml – установочный файл;
  • mod_YandexMetrika.php – основной файл модуля, содержащий код счетчика.

В содержании mod_YandexMetrika.xml можно ничего не менять:

<?xml version="1.0" encoding="utf-8"?>
<extension type="module" version="2.5.0" client="site" method="upgrade">
        <name>mod_YandexMetrika</name>
        <creationDate>24 мая 2014 год</creationDate>
        <author>office-menu.ru</author>
        <version>1.0</version>
        <description>Код счетчика Яндекс Метрики</description>
        <files>
                <filename module="mod_YandexMetrika">mod_YandexMetrika.php</filename>
                <filename>mod_YandexMetrika.xml</filename>
                <filename>index.html</filename>
        </files>
</extension>

Отредактируйте содержание mod_YandexMetrika.php после соответствующего комментария:

<?php
// Защита от прямого доступа
defined('_JEXEC') or die;?>

<!-- Далее идет код, предоставляемый сервисом веб-аналитики. Поменяйте его на свой -->
<!-- Yandex.Metrika counter -->
<script type="text/javascript">
(function (d, w, c) {
    (w[c] = w[c] || []).push(function() {
        try {
            w.yaCounter00000000 = new Ya.Metrika({id:00000000,
                    webvisor:true,
                    clickmap:true,
                    trackLinks:true,
                    accurateTrackBounce:true});
        } catch(e) { }
    });

    var n = d.getElementsByTagName("script")[0],
        s = d.createElement("script"),
        f = function () { n.parentNode.insertBefore(s, n); };
    s.type = "text/javascript";
    s.async = true;
    s.src = (d.location.protocol == "https:" ? "https:" : "http:") + "//mc.yandex.ru/metrika/watch.js";

    if (w.opera == "[object Opera]") {
        d.addEventListener("DOMContentLoaded", f, false);
    } else { f(); }
})(document, window, "yandex_metrika_callbacks");
</script>
<noscript><div><img src="//mc.yandex.ru/watch/00000000" style="position:absolute; left:-9999px;" alt="" /></div></noscript>
<!-- /Yandex.Metrika counter -->

Вы можете скачать модуль, но не забудьте изменить основной файл, заменив код примера на свой. Для этого распакуйте архив, а измените mod_YandexMetrika.php и снова заархивируйте файлы. Расширение архива должно быть .zip.

Скачать модуль

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