bencarr/craft-fathom-analytics

Craft CMS 的非官方 Fathom Analytics 集成

1.0.0-beta.2 2024-01-25 03:12 UTC

This package is auto-updated.

Last update: 2024-09-21 18:47:11 UTC


README

Craft CMS 插件,用于在 Craft 控制面板中显示您的 Fathom Analytics 数据。

功能

此插件旨在帮助内容作者获得网站分析的良好概述,并提供一些上下文信息,他们可以使用这些信息来定制内容更改。它是一个辅助工具,而不是您的 Fathom Analytics 仪表板的替代品。

仪表板小部件

出色的仪表板小部件,具有可自定义的日期范围,以关注您最关心的事项

  • 当前访客 — 当前有多少人在您的网站上,他们来自哪里,他们是从哪里被引用的?
  • 浏览器 — 按浏览器分解您的流量。
  • 设备类型 — 按桌面、移动和平板电脑分解您的流量。
  • 顶级页面 — 按访问量和浏览量列出您的顶级 10 个页面。
  • 顶级引用 — 按访问量和浏览量列出您的顶级 10 个引用。
  • 访客 — 随时间变化的访客和页面浏览量图表。
  • 概述 — 访问量、访客数、平均停留时间和跳出率的基线。

入口侧边栏小部件

一个小部件,直接在条目编辑表单中显示条目特定的分析,并带有选项卡来涵盖所有基本功能

  • 概述 — 访客、浏览量、平均页面停留时间和跳出率。
  • 访客 — 随时间变化的访客和页面浏览量图表。
  • 浏览器 — 按浏览器分解流量。
  • 设备 — 按桌面、移动和平板电脑分解流量。
  • 引用者 — 按访问量和浏览量列出顶级 10 个引用者。

要求

此插件需要 Craft CMS 4.5.0 或更高版本,以及 PHP 8.0.2 或更高版本。

安装

您可以从插件商店或使用 Composer 安装此插件。

从插件商店

转到项目的控制面板中的插件商店,搜索“Fathom Analytics”,然后点击“安装”。

使用 Composer

打开终端并运行以下命令

# go to the project directory
cd /path/to/my-project.test

# tell Composer to load the plugin
composer require bencarr/craft-fathom-analytics

# tell Craft to install the plugin
./craft plugin/install fathom

配置

安装插件后,您需要通过插件设置页面或配置文件配置您的 API 密钥和网站 ID。您可以从 Fathom Analytics 账户 生成 API 密钥,并通过单击您的站点列表中的站点 找到您的网站 ID

从插件设置页面

在启用了管理员更改的环境中,打开设置,然后在“插件”部分下点击“Fathom Analytics”。API 密钥是敏感数据,因此您可能希望使用一个环境变量,并将其排除在版本控制之外。

从配置文件

在您的 config/ 目录中创建一个名为 fathom.php 的文件。

<?php

use craft\helpers\App;

return [
    '*' => [
        'apiKey' => App::env('FATHOM_API_KEY'),
        'siteId' => App::env('FATHOM_SITE_ID'),
    ],
];

扩展

修改可用的日期范围

该插件附带一组默认范围,覆盖从 1 天到 1 年的时间范围。您可以使用 EVENT_DEFINE_WIDGET_RANGES 事件修改这些范围。

默认范围

删除默认范围

通过在 ranges 数组中取消设置其键来删除默认范围。

use bencarr\fathom\events\RegisterWidgetRangesEvent;
use bencarr\fathom\FathomPlugin;
use craft\base\Event;

Event::on(
    FathomPlugin::class, 
    FathomPlugin::EVENT_DEFINE_WIDGET_RANGES, 
    function (RegisterWidgetRangesEvent $event) {
        unset($event->ranges['last_365_days'])
    }
);

添加自定义范围

范围事件期望一个键为数组的 WidgetDateRange 对象。要添加新范围,请在该事件的 ranges 数组上添加一个新键,并使用您所需的配置构建一个 WidgetDateRange 实例

use bencarr\fathom\events\RegisterWidgetRangesEvent;
use bencarr\fathom\helpers\WidgetDateRange;
use bencarr\fathom\FathomPlugin;
use craft\base\Event;
use craft\helpers\DateTimeHelper;

Event::on(
    FathomPlugin::class, 
    FathomPlugin::EVENT_DEFINE_WIDGET_RANGES, 
    function (RegisterWidgetRangesEvent $event) {
        $event->ranges['last_2_years'] = new WidgetDateRange(
            label: 'Last 2 Years',
            start: DateTimeHelper::tomorrow()->sub(new DateInterval('P2Y')),
            end: DateTimeHelper::tomorrow(),
        );
    }
);