No es nadamas hacer un $this->layout()->header, si quieres tener su propio controlador tienes que hacer un plugin para el FrontController y usar el ActionStack para poder llenar ese segmento e inyectarlo en el layout por ejemplo:
Código php:
Ver original<?php
class MyPlugin extends Zend_Controller_Plugin_Abstract {
protected $_stack;
public function dispatchLoopStartup(Zend_Controller_Request_Abstract $request) {
$stack = $this->getStack();
$menuRequest = new Zend_Controller_Request_Simple();
$menuRequest->setControllerName('head')
->setActionName('index');
$stack->pushStack($menuRequest);
}
public function getStack() {
if (null === $this->_stack) {
$front = Zend_Controller_Front::getInstance();
if (!$front->hasPlugin('Zend_Controller_Plugin_ActionStack')) {
$stack = new Zend_Controller_Plugin_ActionStack();
$front->registerPlugin($stack);
} else {
$stack = $front->getPlugin('ActionStack');
}
$this->_stack = $stack;
}
return $this->_stack;
}
}
Lo registras en tu FrontController y cada que hagas una llamada a X controller se va a ser el llamado a ese plugin y por ende a ese controller, luego dentro del controller solo haces un render a el response segment "header" o "footer" dependiendo del stack y como lo manejes.
Saludos.