sylvainjule/matomo

Matomo 辅助工具,Kirby 面板区域和部分

安装数: 7,745

依赖: 0

建议: 0

安全性: 0

星星: 133

关注者: 7

分支: 8

开放问题: 5

语言:Vue

类型:kirby-plugin

2.0.1 2024-05-04 17:36 UTC

This package is auto-updated.

Last update: 2024-09-04 18:18:14 UTC


README

此插件帮助您生成 Matomo 的跟踪代码,并在面板中直接显示一些有用的指标。

screenshot-dashboard-faded


概述

此插件完全免费,并按照 MIT 许可证发布。然而,如果您在商业项目中使用它,并希望帮助我进行维护,请考虑捐赠

TLDR – 让我开始吧 👀

  1. 在您的服务器上安装 Matomo。
  2. 下载并复制此存储库到 /site/plugins/matomo
  3. site/config/config.php 中设置以下值
return array(
    'sylvainjule.matomo.url'        => 'http://your-matomo.url',
    'sylvainjule.matomo.id'         => 'mywebsite',
    'sylvainjule.matomo.token'      => 'token_auth',
);
  1. 将此代码添加到您的页脚代码片段中: <?php echo snippet('matomo') ?>
  2. 访问 Matomo 面板区域或复制面板中专用选项卡/页面下的此蓝图

一切准备就绪。


1. 为什么选择 Matomo?

  • 它是开源的(谁不喜欢开源?)
  • 它是免费的(真的是免费的。你不使用数据付费)
  • 它是自托管的(这意味着你可以更好地控制你的数据)
  • 它尊重你的访客隐私(IP 匿名化,自动删除日志,数据所有权)
  • 现在它已与 Kirby 4 无缝集成 ✌️

2. 安装

Kirby 3: 1.0.7 及以下 Kirby 4: 2.0.0+

下载并复制此存储库到 /site/plugins/matomo

或者,您可以使用 composer 安装它:composer require sylvainjule/matomo


3. 选项

以下是可用选项及其默认值的概述

return array(
    'sylvainjule.matomo.url'            => false, #required
    'sylvainjule.matomo.id'             => false, #required
    'sylvainjule.matomo.token'          => false, #required for the panel integration
    'sylvainjule.matomo.active'         => true,
    'sylvainjule.matomo.debug'          => false,
    'sylvainjule.matomo.trackUsers'     => false,
    'sylvainjule.matomo.disableCookies' => false,
    'sylvainjule.matomo.blacklist'      => ['127.0.0.1', '::1'],
    'sylvainjule.matomo.basicAuth'      => null,
    'sylvainjule.matomo.area'           => true
    'sylvainjule.matomo.area.label'     => 'Matomo',
    'sylvainjule.matomo.area.headline'  => null,

);

3.1. url(必需)

您的 matomo 安装位置

'sylvainjule.matomo.url' => 'https://analytics.yourdomain.com'

3.2. id(必需)

单个 Matomo 安装可以托管多个网站。插件需要知道要查找的 id

'sylvainjule.matomo.id' => 'mywebsite'

3.3. token(面板集成必需)

面板部分需要调用您的 Matomo API。需要一个 token_auth,您可以在控制面板的“设置 > API”中找到它。复制粘贴字符串,不要包含 &token_auth= 前缀。

以下是一个示例令牌。请注意,此令牌是私有的,不应公开。一旦添加,如果您需要发布代码,请创建类似 config.github.php 的副本,其中将包含非敏感信息,并将您的真实 config.php 添加到您的 .gitignore

'sylvainjule.matomo.token' => 'gQ7TQgg8EFe3h29F9t4aJqC33VQdPfFP4M'

3.4. active

您可以通过将此值设置为 false 来禁用片段。

'sylvainjule.matomo.active' => true

3.5. blacklist

默认情况下,localhost 在黑名单中。您可以更改它。

'sylvainjule.matomo.blacklist' => ['127.0.0.1', '::1']

3.6. trackUsers

默认情况下,脚本只为未登录用户激活。如果您想更改它,将此选项设置为 true

'sylvainjule.matomo.trackUsers' => false

3.7. debug

如果您希望始终运行脚本(即使在本地主机或登录状态下),请将此选项设置为true

'sylvainjule.matomo.debug' => false

3.8. disableCookies

如果您想在用户端不使用任何跟踪cookie的情况下使用Matomo,请将此选项设置为true。您可以在Matomo常见问题解答中了解更多关于此设置的信息。

'sylvainjule.matomo.disableCookies' => false

3.9. basicAuth

如果您的Matomo实例通过基本身份验证进一步受到保护,您可以使用USERNAME:PASSWORD格式配置这些凭据。

'sylvainjule.matomo.basicAuth' => null

3.11. area

如果您想隐藏Matomo面板区域,请将此选项设置为false

'sylvainjule.matomo.area' => true

3.11. area.label

如果您想更改Matomo面板区域的标签(在菜单和面包屑中显示),您可以进行配置

'sylvainjule.matomo.area.label' => 'Matomo'

3.12. label

如果您还想更改Matomo面板区域的标题,您可以使用area.headline选项。如果未指定,则使用标签作为后备。

'sylvainjule.matomo.area.headline' => 'Custom area headline'

4. 模板使用

您只需在代码中某处包含此片段即可

<?php snippet('matomo'); ?>

5. 面板显示:区域

面板区域显示整个网站的指标。它在{ site.url }/panel/matomo路由中可用。或者,您可以在自定义标签页/蓝图中进行配置(见下文)。在这种情况下,您可能希望完全禁用该区域。

'sylvainjule.matomo.area' => false

您也可以使用area.label选项自定义其标题

'sylvainjule.matomo.area.label' => 'Analytics'

6. 面板显示:部分

可以在自定义标签页/蓝图中使用部分配置面板仪表板。

6.1. 基本蓝图示例

请确保您已在配置中包含了您的token_auth

将此片段放置在专用标签页/蓝图中

columns:
  - width: 3/4
    sections:
      main:
        type: matomo-main
  - width: 1/4
    sections:
      sidebar:
        type: matomo-sidebar

6.2. 选项

隐藏组件

有一些选项可以帮助您调整此默认面板视图。两个部分都有三个组件

  • 主视图matomo-main)包括chartoverviewwidgets
  • 侧边栏matomo-sidebar)包括linkrealtimesummary

您可以选择像这样隐藏它们

columns:
  - width: 3/4
    sections:
      main:
        type: matomo-main
        chart: false
        overview: false
        widgets: false
  - width: 1/4
    sections:
      sidebar:
        type: matomo-sidebar
        link: false
        realtime: false
        summary: false

(好吧,这里就没有东西可以工作了,但您应该明白了)。

隐藏和排序小部件

您可以根据自己的喜好对小部件进行排序。您还可以选择仅显示其中的一些。以下是一个所有小部件都明确设置、更改其列表顺序或删除条目以过滤小部件的选项的示例。

columns:
  - width: 3/4
    sections:
      main:
        type: matomo-main
        widgets:
          - referrerType
          - websites
          - socials
          - devicesType
          - keywords
          - popularPages
隐藏时间段

默认情况下,显示所有4个范围(本年本月过去7天今天)。您可以通过从periods列表中明确排除它们来选择隐藏其中的一些。

columns:
  - width: 3/4
    sections:
      main:
        type: matomo-main
        periods:
          - year
          - month
          - week
          - day
更改默认值

您可以访问两个默认选项,即period和widgets的limit

  • period是首次加载部分时的默认活动时间段。它是一个字符串,用于从上面的时间段中选择。默认为month
  • limit是小部件中显示的条目数。默认为5
columns:
  - width: 3/4
    sections:
      main:
        type: matomo-main
        defaults:
          period: month
          limit: 5

6.3. 完整蓝图示例

以下是蓝图的所有选项都明确设置的示例。

columns:
  - width: 3/4
    sections:
      main:
        type: matomo-main
        chart: true
        overview: true
        defaults:
          period: month
          limit: 5
        periods:
          - year
          - month
          - week
          - day
        widgets:
          - referrerType
          - websites
          - socials
          - devicesType
          - keywords
          - popularPages
  - width: 1/4
    sections:
      sidebar:
        type: matomo-sidebar
        link: true
        realtime: true
        summary: true

7. 面板页面小部件

面板页面小部件显示特定页面的指标,无论是单语言网站还是多语言网站。

欢迎对有关此小部件行为的反馈。它可能还需要进行改进,来自更多活网站的反馈将非常有帮助。请检查下方的潜在陷阱

screenshot-page

7.1. 基本蓝图示例

请确保您已在配置中包含了您的token_auth

将此片段放置在您的页面蓝图

columns:
  - width: 1/3
    sections:
      matomo:
        type: matomo-page

该部分将自动检测页面URI,并获取给定时间段内的指标。

7.2. 选项

时间段

您可以选择要显示的时间段,可以是yearmonthweekday。默认为month

matomo:
  type: matomo-page
  period: month
多语言概述

插件将自动检测多语言是否开启,并获取当前语言的指标。

可选地,您也可以使用 overview 选项显示所有语言的指标。默认为 false

matomo:
  type: matomo-page
  overview: false

7.3. 可能的问题

  • Matomo 接收公共 URL,这意味着它的 URI 仅在应用路由后才会被获取。因此,插件使用从页面公共 URL 创建的 URI 过滤 Matomo 的响应。如果您已设置自定义路由,例如跳过子文件夹,请确保用页面模型重写模板的 url 方法,否则 URI 不会正确。
  • 如果您在 Matomo 开始数据收集后更改了默认语言,则显示的指标可能不准确/不完整。

8. 许可证

MIT


9. 致谢

Kirby 2 之前有一些 Piwik 集成插件

片段集成是从 @jenstornellkirby-ga 无耻地改编的。👏