schachbulle/contao-counter-bundle

Contao 4 的页面、消息和文章计数器

1.2.3 2024-04-18 13:46 UTC

This package is auto-updated.

Last update: 2024-09-18 14:43:34 UTC


README

一个Contao模块(至少版本3.1),可以统计页面、文章和消息的访问次数。
本版本已在 schachbund.de 上投入生产使用,但仍在开发阶段。

集成

计数器由计数模块和输出模块组成。计数模块负责计数,必须在输出模块之前在页面布局或页面中集成。

这两个前端模块可以在“计数器”区域下找到,位于主题 -> 模块。计数模块只需集成一次,输出模块可以使用不同的模板在任意位置集成。
计数模块在表 tl_fh_counter 中管理数据,并额外将当前内容(页面、文章、消息)的数据写入 $GLOBALS['fhcounter']。输出模块将使用这些数据。

模板变量

ViewCounterinfo(布尔值):计数器头部数据存在与否

ViewDiagrams(布尔值):计数器图表存在与否。需要JQuery!

CounterSource:计数器名称(tl_news, tl_article, tl_page)

CounterPid:CounterSource的ID

CounterStarttime:第一次计数的时间戳

CounterLastcounting:最后一次计数的时间戳

CounterLastip:最后访问者的IP地址,是否计数。通常是自己的IP。

CounterOnline:当前URL的当前访问者数量

CounterTopOnlineCount:当前访问者数量的峰值

CounterTopOnlineTime:当前访问者数量峰值的时间戳

CounterTotalhits / CounterAll:总访问次数

CounterYesterday:昨天的访问次数

CounterThisDay:今天的访问次数

CounterAverage:每天的平均访问者数量

这还远不是所有模板变量,但是最重要的。此外,模板尚未完善,可能包含错误。变量名可能会更改或不再使用。

还可以为上述变量名提供前缀。例如,PageCounterAverage 显示的是活动页面的平均每日访问者数量,无论当前是否显示文章或消息。其他前缀是 ArticleNews
无前缀的通用计数器按照页面、文章、消息的顺序加权其他计数器。因此,通用计数器首先使用页面数据填充,然后使用文章数据覆盖(如果显示文章)。

Contao设置

计数器与以下前端设置显然可以正常工作

URL重写 = true 自动项激活 = true 将语言添加到URL = false 不重定向空URL = false 使用目录URL = false 不使用页面别名 = false

其他设置尚未充分测试。但是,只要只统计页面,FH-Counter应该不会有问题。当前页面的ID将提供给Contao的模块。

在统计文章时,计数器从GET变量articles获取内容,从而确定当前活动文章。

消息计数稍微复杂一些,因为页面别名是可以自由选择的,并且Contao自身不提供显示消息的信息。因此,计数器首先为所有消息存档确定重定向页面,即消息阅读器。如果活动页面与消息阅读器相对应,则从 $_SERVER['REQUEST_URI'] 中提取消息别名,然后可以计算消息数量。

错误和支持

由于计数器仍在开发阶段,并且尚未集成到Contao的ER中,我在扩展支持方面有所保留。但是,您可以在Contao论坛(Samson1964)或GitHub上联系我。

Frank Hoppe