Skip to content

putyourlightson/craft-element-status-events

v2
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
src
 
 
 
 
 
 
 
 
 
 

Element Status Events for Craft CMS 3

The Element Status Events extension provides events that are triggered whenever an element’s status changes. It is intended to be used a helper component for other Craft modules and plugins.

To get an understanding of how the module works, read the Challenge #6 – The Chicken or the Egg solution.

Requirements

This extension requires Craft CMS 3.0.0 or later.

Usage

Install it manually using composer or add it as a dependency to your plugin.

composer require putyourlightson/craft-element-status-events

If you work with scheduled Entries (future published or expired), make sure to set up cron that calls:

php craft element-status-events/scheduled

Events

Whenever an element’s status is changed, ElementStatusEvents::EVENT_STATUS_CHANGED is fired. The StatusChangeEvent object provides information about the change.

use putyourlightson\elementstatusevents\ElementStatusEvents;
use putyourlightson\elementstatusevents\events\StatusChangeEvent;

// ...

Event::on(
    ElementStatusEvents::class, 
    ElementStatusEvents::EVENT_STATUS_CHANGED, 
    function(StatusChangeEvent $event) {
        $oldStatus   = $event->statusBeforeSave;
        $newStatus   = $event->element->getStatus();
        $isLive      = $event->changedToPublished();
        $isDeath     = $event->changedToUnpublished();
        $isScheduled = $event->changedTo('pending');
    }
);

License

This extension is licensed for free under the MIT License.

Created by PutYourLightsOn in cooperation with Oliver Stark

About

Triggers events whenever element statuses change in Craft CMS.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages