flowpack/neos-matomo

使用Matomo(Piwik)开放分析平台跟踪您的Neos网站访问量!

安装次数: 28,652

依赖项: 0

建议者: 0

安全: 0

星标: 22

关注者: 5

分支: 11

开放问题: 3

类型:neos-package

3.5.0 2022-05-31 12:37 UTC

This package is auto-updated.

Last update: 2024-09-10 14:56:50 UTC


README

Version license

使用Matomo(Piwik)开放分析平台跟踪您的Neos网站访问量!

此包将Matomo开放分析平台集成到Neos中,并且与较旧的Piwik安装兼容。

功能

  • 为您的Neos实例添加后端模块,帮助检查您的配置
  • 在属性检查器中添加标签页,显示由Matomo收集的时间、设备、操作系统和浏览器相关统计信息
  • 添加可自定义的内容元素,允许访客在前端选择退出跟踪
  • Matomo标签管理器支持

neos/neos-googleanalyticskhuppenbauer/MapSeven.Piwik包的启发。

最初,此包被称为portachtzig/neos-piwik。感谢创建者 @koernchen02 和 @sarahRehbock 所做的一切工作!

matomo-logo

Matomo - 开放分析平台 https://matomo.org/

要求

  • cURL php扩展 用于API调用
  • Neos CMS >= 3.3
  • Matomo >= 3.3
  • 一个可通过 https 访问的 Matomo实例
  • 具有 Neos.Neos:Administrator 角色的Neos后端用户

与旧版本的兼容性

此包的版本2仍然与Piwik实例兼容,但可能会在Matomo进行重大更新后无法再使用。

始终确保您的跟踪软件是最新的,并在可能的情况下使用此包的最新版本。

安装

在您的网站包中运行以下命令

composer require --no-update flowpack/neos-matomo

然后,在项目根目录中运行composer update

neos-piwik更新到neos-matomo

现在,您应该在composer.json中要求flowpack/neos-matomo而不是portachtzig/neos-piwik

如果您使用或重写了Portachtzig.Neos.Piwik:StatsTabMixin,则必须在您的自己的节点类型配置中将命名
改为Flowpack.Neos.Matomo:StatsTabMixin

在您的配置文件中,您必须更改路径

Portachtzig:
  Neos:
    Piwik:

Flowpack:
  Neos:
    Matomo:

我们还为API请求添加了缓存。因此,默认情况下,统计信息将在刷新之前保留长达5分钟。

配置

安装包后,Neos中将出现一个额外的后端模块,称为“Matomo”。根据您的当前FLOW_CONTEXT,您可能需要刷新缓存。

matomo-logo

要将Neos与您的Matomo安装连接起来,您只需在您的Settings.yaml中输入一些属性以跟踪用户统计信息即可。您可以将配置放在网站包中或在部署期间添加。您还可以使用包含的后端模块来验证您的配置。

  • 主机 输入您的Matomo安装的主机名,不包含协议。

  • 主机 您应该始终使用https配置您的Matomo安装,但您可以在测试目的下更改它。

  • token_auth 您必须输入具有对配置站点view权限的Matomo用户的有效认证令牌。

  • idSite 您必须输入在Matomo中配置的网站ID。当使用Matomo标签管理器以在后台显示统计信息时,也需要此信息。

  • containerId 您必须输入在 Matomo 中配置的标签管理器容器的 ID。在这里,您也可以使用为开发环境和测试环境生成的较长 ID。

  • system 您可以更改正在使用的系统,以便它定位到正确的跟踪代码。默认为 matomo,如果需要,请将其设置为 piwik

  • apiTimeout 您可以更改默认的超时时间,超时后后端将取消对 Matomo 安装的请求。默认超时时间为 10 秒。

  • privacyManagement 您可以更改三个与 ePrivacy/GDPR 相关的变量,并设置 Matomo 的跟踪行为。默认情况下,所有三个变量都设置为 false。您可以使用这些变量轻松地将 Matomo 配置为符合 GDPR。

这是它的一个示例

Flowpack:
  Neos:
    Matomo:
      host: 'tracking.example.org'
      protocol: 'https'
      token_auth: 'abcdefg1234567890'
      idSite: 1                                           
      containerId: 'abcdef' # Optional
      system: 'matomo' # Optional, "matomo" or "piwik"
      apiTimeout: 10 
      cacheLifetimeByPeriod:
        year: 86400
        day: 3600

附加功能

跟踪退出的内容元素

此包为 Neos 提供了一个小型可配置的 iframe 内容元素,允许用户在浏览器未启用 "Do-Not-Track" 的情况下手动退出跟踪。iframe 的内容从配置的跟踪主机加载。

您可以通过它们的 API 调整 Matomo 提供的所有设置。

API 请求缓存

默认情况下,对 Matomo API 的请求将根据正在检查的统计数据的周期进行缓存。一些信息基于一年的周期显示。这里我们使用默认的超时时间为 1 天。其他统计数据为 1 到几天。这里超时预设为 1 小时。

您可以在 Settings.yaml 中覆盖按周期的时间超时。请参阅上面的示例。

您可以在自己的 Caches.yaml 中覆盖此包的缓存后端设置。

FlowpackNeosMatomo_ApiCache:
  backend: Neos\Cache\Backend\FileBackend
  backendOptions:
    defaultLifetime: 300

如果您根本不想使用缓存,请改用后端 Neos\Cache\Backend\NullBackend 而不是配置的 FileBackend

访问 Matomo API

您可以通过此包通过注入 Flowpack\Neos\Matomo\Service\Reporting 类来访问 Matomo API。

然后,您可以使用公共方法 callAPI($methodName, $arguments = [], $useCache = true) 调用 Matomo 的任何 API 方法,并将以数组形式获得解析后的 JSON 响应。一些方法可能需要特定的用户权限;如果您的令牌用户没有这些权限,则数组中将包含错误消息。

多站兼容性

Settings.yaml 中的 Matomo 站点 ID 和令牌也可以定义为数组,这样您就可以配置任意数量的站点。然后插件将检查当前站点的 nodename 是否在这个数组中。如果没有找到匹配的站点,则将使用第一个条目。

请参阅此示例,其中只有一个令牌但多个站点

Flowpack:
  Neos:
    Matomo:
      host: tracking.example.org
      token_auth: 12345678910
      idSite:
        myfirstsite: 1
        mysecondsite: 2
        mythirdsite: 2

当与标签管理器一起使用时,也是同样的情况

Flowpack:
  Neos:
    Matomo:
      host: tracking.example.org
      token_auth: 12345678910     
      idSite:
        myfirstsite: 1
        mysecondsite: 2
        mythirdsite: 2
      containerId:
        myfirstsite: 'abc'
        mysecondsite: 'def'
        mythirdsite: 'ghi'

许可证

Neos Matomo 包在 GPL v3(或更高版本)许可证下发布。

屏幕截图

visist per day / last week

后端视图,在属性检查器中选择了 Matomo 面板

visist per day / last week

上个月每天的访问量

visist per day / last week

上周每日访问量

hits all time

所选页面的所有时间访问量和页面浏览量(点击量)

visist per day / last week

浏览器每日访问量(所有时间)

visist per os

操作系统每日访问量(所有时间)

visist per os

设备类别每日访问量(所有时间)