bezhansalleh / filament-google-analytics
与 Filamentphp (FilamentAdmin) 集成的 Google Analytics
Requires
- php: ^8.1
- filament/widgets: ^3.0
- spatie/laravel-analytics: ^5.0
- spatie/laravel-package-tools: ^1.9.2
Requires (Dev)
- laravel/pint: ^1.2
- nunomaduro/collision: ^7.0
- orchestra/testbench: ^8.0
- pestphp/pest: ^2.10
- pestphp/pest-plugin-laravel: ^1.1
- phpstan/extension-installer: ^1.3
- phpunit/phpunit: ^10.1
README

Filament Google Analytics (GA4)
为 Filament (FilamentAdmin) 集成的 Google Analytics
安装
您可以通过 composer 将此包安装到使用 Filament 的 Laravel 应用中
composer require bezhansalleh/filament-google-analytics
目前,请按照 Spatie 的 Laravel Google Analytics 包 中的说明获取凭证,然后将它们放入此处
yourapp/storage/app/analytics/service-account-credentials.json
还将此添加到您的 Filament PHP 应用的 .env
文件中
ANALYTICS_PROPERTY_ID=
用法
所有小部件默认启用在专用的 Google Analytics Dashboard
中。您可以从配置 filament-google-analytics
中启用或禁用特定的小部件或整个专用仪表板,或在主 Filament Dashboard
中显示或隐藏一些小部件。
发布配置文件并设置您的设置
php artisan vendor:publish --tag=filament-google-analytics-config
可用小部件
\BezhanSalleh\FilamentGoogleAnalytics\Widgets\PageViewsWidget::class, \BezhanSalleh\FilamentGoogleAnalytics\Widgets\VisitorsWidget::class, \BezhanSalleh\FilamentGoogleAnalytics\Widgets\ActiveUsersOneDayWidget::class, \BezhanSalleh\FilamentGoogleAnalytics\Widgets\ActiveUsersSevenDayWidget::class, \BezhanSalleh\FilamentGoogleAnalytics\Widgets\ActiveUsersTwentyEightDayWidget::class, \BezhanSalleh\FilamentGoogleAnalytics\Widgets\SessionsWidget::class, \BezhanSalleh\FilamentGoogleAnalytics\Widgets\SessionsDurationWidget::class, \BezhanSalleh\FilamentGoogleAnalytics\Widgets\SessionsByCountryWidget::class, \BezhanSalleh\FilamentGoogleAnalytics\Widgets\SessionsByDeviceWidget::class, \BezhanSalleh\FilamentGoogleAnalytics\Widgets\MostVisitedPagesWidget::class, \BezhanSalleh\FilamentGoogleAnalytics\Widgets\TopReferrersListWidget::class,
自定义仪表板
虽然此插件附带默认仪表板,但有时您可能想要更改 navigationLabel
或 navigationGroup
或禁用一些 widgets
或其他选项,并且考虑到仪表板是一个简单的 filament page
,最简单的解决方案是禁用默认仪表板并创建一个新的 page
php artisan filament:page MyCustomDashboardPage
然后从 可用小部件 列表注册您想要的控件,要么在 getHeaderWidgets()
中,要么在 getFooterWidgets()
中。
<?php namespace App\Filament\Pages; use Filament\Pages\Page; use BezhanSalleh\FilamentGoogleAnalytics\Widgets; class MyCustomDashboardPage extends Page { protected static ?string $navigationIcon = 'heroicon-o-document-text'; protected static string $view = 'filament.pages.my-custom-dashboard-page'; protected function getHeaderWidgets(): array { return [ Widgets\PageViewsWidget::class, Widgets\VisitorsWidget::class, Widgets\ActiveUsersOneDayWidget::class, Widgets\ActiveUsersSevenDayWidget::class, Widgets\ActiveUsersTwentyEightDayWidget::class, Widgets\SessionsWidget::class, Widgets\SessionsDurationWidget::class, Widgets\SessionsByCountryWidget::class, Widgets\SessionsByDeviceWidget::class, Widgets\MostVisitedPagesWidget::class, Widgets\TopReferrersListWidget::class, ]; } }
功能
查看访客和页面浏览量指标
查看活跃用户指标
查看会话和平均会话持续时间指标
通过会话查看设备和国家指标(进行中)
查看最常访问的页面和引用者的列表
更新日志
有关最近更改的更多信息,请参阅 CHANGELOG。
贡献
如果您想为此包做出贡献,您可能想在真实的 Filament 项目中测试它
- 将此存储库分叉到您的 GitHub 账户。
- 在本地创建 Filament 应用。
- 在 Filament 应用的根目录中克隆您的分叉。
- 在
/filament-google-analytics
目录中,为您的修复创建一个分支,例如fix/error-message
。
在您的应用的 composer.json
中安装包
"require": { "bezhansalleh/filament-google-analytics": "dev-fix/error-message as main-dev", }, "repositories": [ { "type": "path", "url": "filament-google-analytics" } ]
现在,运行 composer update
。
有关详细信息,请参阅 CONTRIBUTING。
安全漏洞
请查看我们如何报告安全漏洞的 安全策略。
鸣谢
许可证
MIT 许可证(MIT)。有关更多信息,请参阅 许可证文件。