Я визуализирую элементы верхнего уровня объекта Zend Navigation в одном месте, например:
echo $this->navigation()->menu()->setMaxDepth(0);
Как отобразить дерево навигации со второго уровня вниз для активной ветви?Я попытался создать партиал, который зацикливает объект $this->container
, но я не знаю, как определить, является ли мой текущий элемент активной ветвью.Как только я определил, что это активная ветка, как мне отрендерить меню?Я делаю это трудным путем и упускаю что-то очевидное?
Спасибо!
ОБНОВЛЕНИЕ:
Я принял решение, потому что это то, чтоЯ использовал, но я также хотел бы дать ответ на мой актуальный вопрос, для справки.($this
является объектом просмотра)
// Find the active branch, at a depth of one
$branch = $this->navigation()->findActive($this->nav, 1, 1);
if (0 == count($branch)) {
// no active branch, find the default branch
$pages = $this->nav->findById('default-branch')->getPages();
} else {
$pages = $branch['page']->getPages();
}
$this->subNav = new Zend_Navigation($pages);
$this->subNav
может затем использоваться для визуализации подменю.