The addon comes with a Facade for interacting with the Tracker: \Thoughtco\StatamicCacheTracker\Facades\Tracker

Adding your own tracking data

If you have your own custom tracking data, for example for one of your own tags, you can register them on the Facade. Please bear in mind tracking only happens while the response is generated, so where possible use augmentation hooks.

Using a closure:

use Thoughtco\StatamicCacheTracker\Facades\Tracker;

//...

Tracker::addAdditionalTracker(function ($tracker, $next) {
    // run your logic, for example in an augmentation hook
    // then call:
    $tracker->addContentTag('your-tag-here');

    return $next($tracker);
});

Using an invokable class:

use Thoughtco\StatamicCacheTracker\Facades\Tracker;

//...

class AdditionalTrackerClass {
    public function __invoke($tracker, $next) {
        $tracker->addContentTag('additional::tag');
    }
}

Tracker::addAdditionalTracker(AdditionalTrackerClass::class);

Dispatching an event:

\Thoughtco\StatamicCacheTracker\Events\TrackContentTags::dispatch(['additional::tag']);

Invalidating tracked data

To invalidate pages containing your tracked data, use a listener or observer, and call:

use Thoughtco\StatamicCacheTracker\Facades\Tracker;

//...

$tags = ['one', 'two', 'three'];
Tracker::invalidate($tags);

Flushing all tracked data

To invalidate all pages containing your tracked data call:

use Thoughtco\StatamicCacheTracker\Facades\Tracker;

//...

Tracker::flush();

Previous

Middleware