wdev-rs / laravel-analytics
在您的应用程序中收集页面查看数据,无需第三方跟踪
0.2.3
2024-04-05 20:36 UTC
Requires
- php: ^8.0
- illuminate/support: ^8.0|^9.0|^10.0|^11.0
- jaybizzle/crawler-detect: ^1.2
Requires (Dev)
- liip/rmt: ^1.7
- orchestra/testbench: ^6.0|^7.0|^8.0
- phpunit/phpunit: ^9.0
This package is auto-updated.
Last update: 2024-09-05 21:28:59 UTC
README
这里应该放置您的描述。尽量限制为一到两段,并可能提及您支持的PSRs,以避免与用户和贡献者产生混淆。
安装
您可以通过composer安装此包
composer require wdev-rs/laravel-analytics
安装vue-chartjs集成
npm install vue-chartjs@^4.0.0 chart.js
通过运行以下命令发布供应商文件
php artisan vendor:publish --provider="WdevRs\LaravelAnalytics\LaravelAnalyticsServiceProvider"
使用方法
运行迁移
php artisan migrate
在app/Http/Kernel.php
中将别名添加到中间件中
protected $routeMiddleware = [ ... 'analytics' => \WdevRs\LaravelAnalytics\Http\Middleware\Analytics::class, ... ];
将analytics
中间件添加到您想要跟踪的路由中
Route::middleware(['analytics'])->group(function () { Route::get('/', [PagesController::class,'index'])->name('pages.home'); });
管理员
注册用于显示分析的vue组件
Vue.component('page-views-per-days', require('./vendor/laravel-analytics/components/PageViewsPerDays.vue').default); Vue.component('page-views-per-paths', require('./vendor/laravel-analytics/components/PageViewsPerPaths.vue').default);
在仪表板或其他您喜欢的位置使用这些组件 :)
从控制器传递数据
$pageViewRepository = app(PageViewRepository::class); $pageViewsPerDays = $pageViewRepository->getByDateGroupedByDays(Carbon::today()->subDays(28)); $pageViewsPerPaths = $pageViewRepository->getByDateGroupedByPath(Carbon::today()->subDays(28)); return view('admin.dashboard.index', [ 'pageViewsPerDays' => $pageViewsPerDays, 'pageViewsPerPaths' => $pageViewsPerPaths ]);
<page-views-per-days :initial-data="{{json_encode($pageViewsPerDays)}}"/> <page-views-per-paths :initial-data="{{json_encode($pageViewsPerPaths)}}"/>
测试
composer test
变更日志
请参阅变更日志获取更多信息,了解最近有哪些变化。
贡献
请参阅贡献指南获取详细信息。
安全
如果您发现任何安全相关的问题,请通过电子邮件daniel@wdev.rs联系,而不是使用问题跟踪器。
鸣谢
许可
MIT许可证(MIT)。请参阅许可文件获取更多信息。
Laravel包模板
此包是使用Laravel包模板生成的。