public function beforeController() {
    // this code will be executed before the controller
}
public function afterController() {
    // this code will be executed after the controller
}
public function beforeRouter() {
    // this code will be executed before the router
}
$this->_injectContent('This content will be injected into the layout')
public static function getWidgetMakerContent() {
        $websiteHelper = Zend_Controller_Action_HelperBroker::getStaticHelper('website');
        return array(
            'title'   => 'Todo demo', // title of the plugin that will be visible in the widget maker
            'content' => 'Todo demo content', // content of the plugin's widget maker section
            'icons'   => array(
                $websiteHelper->getUrl() . 'plugins/todo/web/images/todo.png', //icon that will be shown in front of the plugin name
            )
        );
    }
Now go to your website, open any of the content editors and click on the Widgets tab. You should see something like this
Introducing SeoToaster 3.10: Smarter, Safer, and More Power...
When choosing a CMS (Content Management System) for your bu...
Once the go-to platform for creating websites, WordPress fa...
A designer is a specialized computer artist who can take ph...