Sometimes you don't want to pull in a third-party service like Google Analytics to track your application's page views. Then this package comes in handy. Eloquent Viewable allows you to easily associate views with Eloquent models. It's designed with simplicity in mind. This package stores each view record individually in the database. The advantage of this is that it allows us to make very specific counts. For example, if we want to know how many people has viewed a specific post between January 10 and February 17 in 2018, we can do the following: views($post)->period(Period::create('10-01-2018', '17-02-2018'))->count();. The disadvantage of this is that your database can grow rapidly in size depending on the amount of visitors your application has.
Features
- Associate views with Eloquent models
- Get views count of a specific period
- Get views count of a viewable type (Eloquent model class)
- Elegant cache wrapper built-in
- Set a cooldown between views
- Ignore views from crawlers, ignored IP addresses or requests with DNT header