alfrasc/laravel-matomo-tracker

为服务器端Matomo跟踪提供的Laravel门面/包装器。

v1.0.0 2021-11-18 11:36 UTC

This package is auto-updated.

Last update: 2024-09-23 09:41:31 UTC


README

Latest Version on Packagist Total Downloads

关于

alfrasc\laravel-matomo-tracker Laravel包是 piwik\piwik-php-tracker 的包装器。Piwik php tracker 允许服务器端跟踪。

功能

  • LaravelMatomoTracker 门面
  • 在 Laravel 队列中排队跟踪请求

欢迎提出新功能建议。

安装

通过 Composer

在您的 composer.json 中要求 alfrasc\laravel-matomo-tracker 包,并更新您的依赖项

$ composer require alfrasc/laravel-matomo-tracker

发布配置文件(可选)

如果需要,运行 php artisan vendor:publish 以发布配置文件。

$ php artisan vendor:publish

更新您的 .env

将这些变量添加到您的 .env 文件中,并配置它以适应您的环境。

[...]
MATOMO_URL="https://your.matomo-install.com"
MATOMO_SITE_ID=1
MATOMO_AUTH_TOKEN="00112233445566778899aabbccddeeff"
MATOMO_QUEUE="matomotracker"
MATOMO_QUEUE_CONNECTION="default"
[...]

就这些了!

用法

您可以使用门面进行跟踪。

LaravelMatomoTracker::doTrackPageView('Page Title')

跟踪

基本功能

请参阅https://developer.matomo.org/api-reference/PHP-Piwik-Tracker 页面以获取基本方法文档。

此外,还有一些简化使用的函数

// instead of using 
LaravelMatomoTracker::doTrackAction($actionUrl, 'download') // or
LaravelMatomoTracker::doTrackAction($actionUrl, 'link')

// you can use this
LaravelMatomoTracker::doTrackDownload($actionUrl);
LaravelMatomoTracker::doTrackOutlink($actionUrl);

队列

对于队列,您可以使用这些函数。

LaravelMatomoTracker::queuePageView(string $documentTitle)
LaravelMatomoTracker::queueEvent(string $category, string $action, $name = false, $value = false)
LaravelMatomoTracker::queueContentImpression(string $contentName, string $contentPiece = 'Unknown', $contentTarget = false)
LaravelMatomoTracker::queueContentInteraction(string $interaction, string $contentName, string $contentPiece = 'Unknown', $contentTarget = false)
LaravelMatomoTracker::queueSiteSearch(string $keyword, string $category = '',  $countResults = false)
LaravelMatomoTracker::queueGoal($idGoal, $revencue = 0.0)
LaravelMatomoTracker::queueDownload(string $actionUrl)
LaravelMatomoTracker::queueOutlink(string $actionUrl)
LaravelMatomoTracker::queueEcommerceCartUpdate(float $grandTotal)
LaravelMatomoTracker::queueEcommerceOrder(float $orderId, float $grandTotal, float $subTotal = 0.0, float $tax = 0.0, float $shipping = 0.0,  float $discount = 0.0)
LaravelMatomoTracker::queueBulkTrack()

有关设置队列的文档,请参阅 https://laravel.net.cn/docs/6.x/queues

设置

请参阅 https://developer.matomo.org/api-reference/PHP-Piwik-Tracker 页面以获取基本设置文档。

此外,这些设置可用

LaravelMatomoTracker::setCustomDimension(int $id, string $value) // only applicable if the custom dimensions plugin is installed on the Matomo installation
LaravelMatomoTracker::setCustomDimensions([]) // array of custom dimension objects {id: <int>, value: <string>} // bulk insert of custom dimensions and basic type checking
LaravelMatomoTracker::setCustomVariables([]) // array of custom variable objects {id: <int>, name: <string>, value: <string>, scope: <string>} // bulk insert of custom variables and basic type checking

变更日志

请参阅 changelog 了解最近更改的更多信息。

贡献

请参阅 contributing.md 了解详细信息以及待办事项清单。

安全

如果您发现任何安全问题,请通过电子邮件 alexander.schmidhuber@gmail.com 而不是使用问题跟踪器。

鸣谢

许可

BSD-3-Clause。有关更多信息,请参阅 license 文件