Las vistas de ZendFramework

Últimamente, estoy sacando algunos ratos para desarrollar una pequeña web para ir probando el ZenFramework. Hasta el momento he encontrado cosas que me han gustado y que no.

La Convention over Configuration te ahorra el pelearte con ficheros de configuración (como la mayoría de los frameworks más conocidos de php), el patrón ActiveRecord y la cantidad de componentes que trae de serie(por lo que parece sino todos, la mayoría vienen "reciclados" de PEAR).

Lo que no me ha gustado ha sido la combinación de los componentes Zend_View y Zend_Controller para la vista, que es un sistema de plantillas basado en php.
El primer problema que encuentro es que no hay forma de definir una página maestra, por lo que para poner por ejemplo una cabecera y un pie hay que hacer algo parecido a los includes.

echo $this->render('cabecera.phtml')
...codigo...
echo $this->render('pie.phtml')

El segundo me parece todavía más molesto, al ser php combinado con html, se complica mucho el código de las plantillas. Y si para un programador le puede ser ya difícil de seguir donde se habre y cierra un foreach o un if, un diseñador o maquetador puede pasar un rato divertido.

En conclusión, que acaba pareciendo código spaghetti. Eso sí,parece que se puede utilizar Smarty como motor de plantillas, con el que en su día no estuve demasiado cómodo trabajando y no me motiva demasiado probarlo.