0

我想在使用 ZF 1.X 的网站构建中实现下拉菜单

在我的 application/layouts/layout.phtml 我有电话

$this->navigation()->menu()->renderMenu(   
    $this->navigation()->findByLabel('My Account'),
    array('maxDepth' => 0)
);

在 myapp/Controller/Plugin/Navigation.php 我看到标有“我的帐户”的菜单:

$account_container = new Zend_Navigation_Page_Mvc(
            array(
                  'route' => 'account_index',
                  'label' => 'My Account',
                  'pages' => array(
                        new Zend_Navigation_Page_Mvc(
                            array(
                            'route' => 'productions_list',
                            'label' => 'My Productions',
                            )
                        ),
                        new Zend_Navigation_Page_Mvc(
                            array(
                                'route' => 'productions_create',
                                'label' => 'Create a Production',
                            )
                        ),
                        new Zend_Navigation_Page_Mvc(
                            array(
                                'route' => 'account_inbox',
                                'label' => sprintf('My Inbox (%s)', $ident->getAllUnreadMessagesCount()),
                                'id' => 'inbox-count'
                            )
                        ),
                        new Zend_Navigation_Page_Mvc(
                            array(
                                 'route' => 'search_search_productions',
                                 'label' => 'Search Productions'
                            )
                        ),
                        new Zend_Navigation_Page_Mvc(
                            array(
                                 'route' => 'search_search_users',
                                 'label' => 'Search Users'
                            )
                        ),
                  )
            )
        );                 

这会产生

<ul class="navigation"> 
    <li class="active"><a href="/news">Blog</a></li>
    ...
    ...
</ul>

我需要像这样使用 UL 添加嵌套级别:

<ul class="navigation"> 
    <li class="active">
        <a href="/news">Blog</a>
        <ul>
            <li><a href="/somethingelse">link</a></li>
            ...
            ...
        </ul>
    </li>
    ...
    ...
</ul>

这样做的方法是什么?我需要这个在javascript中生成一个下拉菜单

4

2 回答 2

0

我找到了解决方案,'maxDepth' => 1 还不够,

需要它在子数组中实现新页面:

$account_container = new Zend_Navigation_Page_Mvc(
        array(
              'route' => 'account_index',
              'label' => 'My Account',
              'pages' => array(
                    new Zend_Navigation_Page_Mvc(
                        array(
                        'route' => 'productions_list',
                        'label' => 'My Productions',
                        'pages' => array(
                            new Zend_Navigation_Page_Mvc(
                            array(
                                'route' => 'mychildurl',
                                'label' => 'My Child Label',
                            )
                        ),
                        )
                    ),
于 2012-11-09T10:30:04.607 回答
-1

我想你只需要设置:

'maxDepth' => 1

而不是0。

于 2012-11-09T10:22:33.357 回答