coderflexx / laravisit
一个用于跟踪您的页面并了解您受众的软件包
v2.0.0
2024-03-18 22:06 UTC
Requires
- php: ^8.1
- coderflexx/laravel-presenter: ^2.0
- illuminate/contracts: ^10.0|^11.0
- jaybizzle/crawler-detect: ^1.2
- spatie/laravel-package-tools: ^1.9.2
Requires (Dev)
- nunomaduro/collision: ^7.0|^8.0
- nunomaduro/larastan: ^1.0|^2.0
- orchestra/testbench: ^8.0|^9.0
- pestphp/pest: ^1.22|^2.34
- phpstan/extension-installer: ^1.1
- phpstan/phpstan-deprecation-rules: ^1.0
- phpstan/phpstan-phpunit: ^1.0
- phpunit/phpunit: ^9.5|^10.0
README
跟踪您的页面并了解用户行为的简洁方法
安装
您可以通过composer安装此软件包
composer require coderflexx/laravisit
您可以使用以下命令发布配置文件
# linux php artisan vendor:publish --provider="Coderflex\\Laravisit\\LaravisitServiceProvider" # windows php artisan vendor:publish --provider="Coderflex\Laravisit\LaravisitServiceProvider"
然后,运行数据库迁移
php artisan migrate
这是已发布配置文件的内容
return [ /* |-------------------------------------------------------------------------- | User Namespace |-------------------------------------------------------------------------- | | This value informs Laravisit which namespace you will be | selecting to get the user model instance | If this value equals to null, "\Coderflex\Laravisit\Models\User" will be used | by default. | */ 'user_namespace' => "\Coderflex\Laravisit\Models\User", ];
用法
使用HasVisits
特性
首先,您需要使用HasVisits
特性和实现CanVisit
接口。
namespace App\Models\Post; use Coderflex\Laravisit\Concerns\CanVisit; use Coderflex\Laravisit\Concerns\HasVisits; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; class Post extends Model implements CanVisit { ... use HasFactory; use HasVisits; ... }
完成此步骤后,您就准备就绪了,现在您可以使用visit
方法来计数访问量
$post->visit();
您可以将方法链到visit
方法上。以下是一些可用的方法
默认情况下,您将使用dailyInterval()
方法拥有每天的独立访问量。这意味着,当用户在一天的时间内多次访问页面时,您将只看到一个与他们的相关记录。
如果您想以不同的时间段记录用户对页面的访问,这里有一系列有用的方法
获取常用时间段的记录
记录访问后,您可以通过以下方法检索数据
访问演示者
此软件包附带有用的装饰模型属性,并在底层使用Laravel Presenter软件包。
测试
composer test
变更日志
有关最近更改的更多信息,请参阅变更日志。
贡献
有关详细信息,请参阅贡献指南。
安全漏洞
有关如何报告安全漏洞的详细信息,请参阅我们的安全策略。
灵感
致谢
许可证
MIT许可证(MIT)。有关更多信息,请参阅许可证文件。