2010-10-25 4 views
0

У меня есть страница с запретом доступа, которая не должна отображаться в меню. Тем не менее, пользователь может быть перенаправлен на страницу отказа в доступе.Как зарегистрировать страницу без меню с Zend_Navigation?

У меня также есть секция панировочных сухарей на странице, и если вы перейдете на страницу отказа от доступа, она станет пустой, что крайне уродливо.

Поэтому я хотел бы зарегистрировать страницу, но не отображать страницу в меню. Я попытался установить видимое свойство на false, но когда я это сделаю, панировочные сухари все еще не отображаются правильно (хотя элемент удален из меню)

Как я могу зарегистрировать страницу, но не показывать ее в меню?

ответ

2

Вы можете добавить меню в любое время и установите сухари, чтобы сделать также невидимые страницы:

echo $this->navigation()->breadcrumbs()->setRenderInvisible(true) 

Другой метод не добавить страницу в любое время в меню, но и использовать Init () метод errorController для добавления страницы (поэтому он добавляется только тогда, когда это необходимо):

controller ErrorController extends Zend_Controller_Action 
{ 
    public function init() 
    { 
     $params = array(); // Add here the options you want 
     $page = new Zend_Navigation_Page($params); 

     $container = $this->view->navigation()->getContainer(); 
     $container->addPage($page); 
    } 
} 
+0

Абсолютно совершенный (используется 'setRenderInvisible'). Большое спасибо :) –