2009-12-21 3 views
3

Я работаю в контроллере ошибок моего модуля по умолчанию, но у меня есть другие модули/контроллеры, которые имеют ошибки. Их ошибки отправляются контроллерам по умолчанию/ошибкам, но используемые макеты являются теми из модуля, который запустил эту ошибку. Я хочу использовать только макет модулей по умолчанию для всех ошибок.Как изменить макет Zend в модуле/контроллере на макет, хранящийся в другом модуле?

ответ

10
<?php 
    class ErrorController extends Zend_Controller_Action 
    { 
     public function init() 
     { 
      parent::init(); 
      $layout = Zend_Layout::getMvcInstance(); 
      // Set a layout script path: 
      $layout->setLayoutPath('/path/to/you/default/module/layouts'); 
      // choose a different layout script: 
      $layout->setLayout('foo'); 
     } 
    } 
12

Почему бы не использовать помощника:

public function init() 
{ 
    $this->_helper->layout->setLayout('front'); 
} 

хммм ???

Смежные вопросы