0

我目前正在使用 Zend_Navigation 从 XML 文件创建菜单,到目前为止,菜单可以正确呈现。我的问题是我需要将页面添加到导航容器中的特定位置。到目前为止,我有:

$this->_navContainerConfig = new Zend_Config_Xml(APPLICATION_PATH .
            '/configs/navigation.xml', 'nav');

        $this->_navContainer = new Zend_Navigation($this->_navContainerConfig);

        $this->_navContainer->findById('defaultindex')->addPage(array(
            'label'         => 'Open Prints',
            'module'        => 'default',
            'controller'    => 'artwork',
            'action'        => 'list',
            'params'        => array(
                'medtyp'        => 2),
            'resource'      => 'default:artwork',
            'privilege'     => 'list',
            'route'         => 'default'
        ));

这只是在页面 id 'defaultindex' 中添加了一个子页面,我需要在 'defaultindex' 页面之后添加该页面。

有谁知道如何做到这一点?

提前非常感谢,祝大家圣诞快乐,

加里

4

1 回答 1

0

您可以直接从 Zend_Navigation_Container 使用方法 addPage

$this->_navContainer->addPage(your_array);

它将在容器中的所有页面之后添加您的页面。如果您需要自定义顺序,您需要扩展 Zend_Navigation_Container 并添加方法来重写容器中页面的属性 $_index 以按您想要的顺序对它们进行排序

于 2012-12-25T12:33:45.473 回答