mirror of
https://github.com/silverstripe/silverstripe-framework
synced 2024-10-22 14:05:37 +02:00
888 B
888 B
Versioned
The Versioned class is a [api:DataObject]
that adds versioning and staging capabilities to the objects.
Trapping the publication event
Sometimes, you'll want to do something whenever a particular kind of page is published. This example sends an email whenever a blog entry has been published.
SilverStripe 2.3
:::php
class Page extends SiteTree {
// ...
public function publish($fromStage, $toStage, $createNewVersion = false) {
mail("sam@silverstripe.com", "Blog published", "The blog has been published");
return $this->extension_instances['Versioned']->publish($fromStage, $toStage, $createNewVersion);
}
}
SilverStripe 2.4
:::php
class Page extends SiteTree {
// ...
public function onAfterPublish() {
mail("sam@silverstripe.com", "Blog published", "The blog has been published");
parent::onAfterPublish();
}
}