2009-12-28 45 views
0

可能重複:
Zend Framework - multiplate navigation blocksZend的導航行爲不端

我想通過在一個頁面上,使用Zend_Navigation給一個以上的鏈接...

例如

這樣,

echo $this->navigation()->topmenu(); 
echo $this->navigation()->menu(); 
echo $this->navigation()->footermenu(); 

,但我不能這樣做...

當我使用像下面的代碼只是工作這一個

echo $this->navigation()->menu(); 

我使用像下面的代碼。

$container = new Zend_Config_Xml(APPLICATION_PATH .'/configs/navigation.xml' 'nav_top'); 

$navigation = new Zend_Navigation($container); 
      $view->navigation($navigation); 

如何創建在同一頁面中不同的鏈接...

回答

0

回答here

我有這個完全相同的問題。我在我的控制器中爲每個我需要的菜單創建了多個Zend_Navigation_Container實例,將它們傳遞給視圖,然後通過將對象直接傳遞給菜單渲染方法來渲染它們。如下:

在控制器:

$this->view->menu1 = new Zend_Navigation_Container(); 
$this->view->menu2 = new Zend_Navigation_Container(); 

在視圖:

$this->navigation()->menu()->renderMenu($this->menu1); 
$this->navigation()->menu()->renderMenu($this->menu2); 

你甚至可以自主的每一個(通過插入方法調用的初始菜單()調用之後:

$this->navigation()->menu()->setUlClass('my_first_menu')->renderMenu($this->menu1); 
$this->navigation()->menu()->setUlClass('my_second_menu')->renderMenu($this->menu2);