• Блог
  • [siteStatistics] Статистика сайта

Компонент для учета просмотра и посещений страниц ресурсов. Альтернатива известного дополнения HitsPage, но с дополнительными возможностями. Учитываются не только просмотры, но и уникальные посещения. А в админке можно посмотреть статистику как по ресурсам в разрезе периодов — день, месяц, год, так и сайта в целом.

Вызывается сниппетом siteStatistics и может работать в двух режимах — page и site.

[[!siteStatistics? &mode=`site`]]

Режим page отвечает за статистику страницы (ресурса), а режим site, соответственно, за статистику всего сайта. По умолчанию указан режим page.

Режим статистики страницы

Сниппет в этом режиме показывает количество посещений или просмотров конкретного ресурса. Указываем в шаблоне или чанке

// Показывает количество просмотров
[[!siteStatistics? &resource=`[[*id]]`]]
или так
//Показывает количество посещений
[[!siteStatistics? &resource=`[[*id]]` &show=`users`]]

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

[[!siteStatistics? &resource=`[[+id]]`&count=``]]

и получаем такой блок

Еще важный параметр — count. Он определяет период статистики и принимает следующие значения

  • '' (пустое значение) — Показывает полную статистику без ограничений по периодам. Пример на предыдущей картинке.
  • «byday» — Показывает данные за день. Как в Яндекс.Метрике
  • «bymonth» — Показывает данные за месяц.
  • «byyear» — Показывает данные за год.

  • Работает в паре с параметром date. Если date не указан, то берутся соответственно текущие дата/месяц/год.

    Следующий параметр date. Он указывает, на какую дату выводить статистику. Если не указана, то берется текущая. Формат с учетом параметра count: для «byday» — «YYYY-mm-dd», для «bymonth» — «YYYY-mm», для «byyear» — «YYYY».

    Параметр show принимает 2 значения — «views» и «users». Если указан «views», то выводится количество просмотров (указан по умолчанию). Если «users» — то количество посещений.

    Параметр toPlaceholders используется для сохранения данных о просмотрах и посещениях в плейсхолдеры [[+stat.views]] и [[+stat.users]] соответственно.

    [[!siteStatistics? &toPlaceholders=`1`]]
    <div>Просмотры: [[+stat.views]]</div>
    <div>Посещения: [[+stat.users]]</div>
    

    Режим статистики сайта

    В этом режиме показывается статистика всего сайта. Ставим вызов сниппета в футере

    // Дневная статистика
    [[!siteStatistics? &mode=`site` &count=`byday`]]
    

    и получаем что-то типа такого

    Что-то это напоминает :) Нужно поменять дизайн — меняем шаблон, указанный в параметре tpl.

    Административная часть

    Как видно по картинке — возможностей для фильтра вполне хватает. Чекбокс «Общая статистика» включает/отключает режим просмотра статистики всего сайта. Текущую запись можно удалить. Так можно очистить статистику у конкретного объекта в конкретный день или у всего сайта вообще или только в указанный период. В общем, ничего сложного.

    Но это еще не всё. Если вы закажете этот продукт прямо сейчас, то получите совершенно бесплатно сниппет учета online пользователей. :)

    [[!siteOnlineUsers?]]
    

    Он имеет несколько параметров:

  • ctx — контекст, в котором считать пользователей. По-умолчанию считает во всех.
  • toPlaceholder — тут указываем имя плейсхолдера, в который будет сохранятся вывод.
  • tpl — шаблон для вывода.
  • Системные настройки

  • stat.online_time — Время (в минутах), по истечении которого будет считаться, что пользователь ушел. По-умолчанию 15 минут.
  • stat.enable_statistics — Включает ведение статистики сайта.
  • stat.count_online_users — Включает подсчет пользователей пользователей на сайте. По-умолчанию отключен.

  • В менеджере посмотреть текущих пользователей можно на второй вкладке.

    12 июня 2015, 09:35   15     0

    Комментарии ()

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

      Выделите опечатку и нажмите Ctrl + Enter, чтобы отправить сообщение об ошибке.