Если вы не хотите писать собственный декоратор, вы должны использовать обратный вызов:
$element->addDecorator('Callback', array(
'callback' => function($content, $element, $options) {
Zend_Debug::dump($content, 'content'); //elements decorated so far
Zend_Debug::dump($element, 'element'); //current element
Zend_Debug::dump($options, 'options'); //other options
return "<a href=\"{$options['href']}\">{$options['label']}</a>";
},
'option' => 'value', //everything but 'callback' and 'placement' gets
//passed to callback as option
'href' => 'http://example.com',
'label' => 'Link!',
'placement' => Zend_Form_Decorator_Abstract::APPEND
));
Конечно, это обратный вызов в стиле php5.3, но вы также можете использовать oldstyle.