The Statamic Headless Refresh addon enhances your Statamic experience by seamlessly integrating headless CMS capabilities. It provides a convenient dashboard widget that allows you to trigger updates to your decoupled website directly from the Statamic backend. The plugin also supports automated URL triggers tied to specific events, such as when an entry is saved, ensuring your headless site is always up-to-date. Events are also customizable.
- Dashboard Widget: Optionally add a widget to your Statamic dashboard for easy manual refreshes.
- Event-Driven Triggers: Automate the refresh process by tying URL triggers to events like entry saves.
Effortlessly manage and synchronize your headless CMS updates with Statamic Headless Refresh.
To install the Headless Refresh addon, follow these steps:
-
Install the addon via Composer:
composer require isaadsalman/headless-refresh
-
Publish the addon assets and configuration:
php artisan vendor:publish --tag=headless-refresh-config
-
Update the configuration file
config/statamic/headless-refresh.php
as needed (see the Configuration section below).
The configuration for the Headless Refresh addon is found in config/statamic/headless-refresh.php
. Modify the following options as required:
return [
'event_trigger' => env('HEADLESS_REFRESH_EVENT_TRIGGER', false),
'trigger_link' => env('HEADLESS_REFRESH_TRIGGER_LINK', null),
'deployment_message' => env('HEADLESS_REFRESH_DEPLOYMENT_MESSAGE', "Deployed"),
'events' => [
Statamic\Events\EntrySaved::class,
Statamic\Events\EntryDeleted::class,
Statamic\Events\NavSaved::class,
Statamic\Events\NavDeleted::class,
Statamic\Events\NavTreeSaved::class,
Statamic\Events\NavTreeDeleted::class,
Statamic\Events\TaxonomySaved::class,
Statamic\Events\TaxonomyDeleted::class,
],
'live_updates_notice_title' => 'Live Updates Notice',
'live_updates_notice_text' => 'Please note that your updates will be visible online within 5 minutes from when you save an entry. If you require immediate visibility, simply click the button below.',
'live_updates_notice_button' => 'Refresh Now'
];
event_trigger
: Set totrue
to enable the event-based trigger.trigger_link
: Define the URL or link that triggers the headless refresh.deployment_message
: Customize the message displayed upon successful deployment.events
: Specify the events that should trigger the headless refresh.live_updates_notice_title
: Widget titlelive_updates_notice_text
: Widget description textlive_updates_notice_button
: Widget button text.
To enable the event-based trigger, set the event_trigger
to true
in the configuration file. This will trigger the headless refresh based on specified events.
You can add the Headless Refresh widget to your dashboard by including it using its handle 'headless-refresh'
.