nexxai / laravel-analytics
在应用程序中收集匿名页面浏览数据,无需第三方跟踪
0.2.1
2023-04-04 07:24 UTC
Requires
- php: ^8.0
- illuminate/support: ^8.0|^9.0|^10.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-18 18:01:27 UTC
README
这里应该放置您的描述。尽量限制为一两段,并提及您支持的PSRs,以避免用户和贡献者产生混淆。
安装
您可以通过composer安装此包
composer require nexxai/laravel-analytics
安装vue-chartjs集成
npm install vue-chartjs@^4.0.0 chart.js
运行以下命令发布供应商文件
php artisan vendor:publish --provider="Nexxai\LaravelAnalytics\LaravelAnalyticsServiceProvider"
使用
运行迁移
php artisan migrate
在app/Http/Kernel.php
中将别名添加到中间件
protected $routeMiddleware = [ ... 'analytics' => \Nexxai\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
更新日志
有关最近更改的更多信息,请参阅更新日志。
贡献
有关详细信息,请参阅贡献指南。
安全
如果您发现任何与安全相关的问题,请通过nexxai@gmail.com发送电子邮件,而不是使用问题跟踪器。
鸣谢
许可证
MIT许可证(MIT)。有关更多信息,请参阅许可证文件。
Laravel Package Boilerplate
此包是使用Laravel Package Boilerplate生成的。