gpt4 book ai didi

php - 我应该在哪里填充我的 Zend_Navigation 容器?

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:33:48 24 4
gpt4 key购买 nike

我应该在我的应用程序中的什么地方定义我的顶级和低级页面以供 Zend Navigation 使用?我的顶级导航栏 View 助手将与生成子导航的 View 助手分开。

最佳答案

一种更简单的方法是在一个地方定义所有导航。它支持无限制的嵌套(子)页面,这意味着您可以将主菜单作为基础级别,然后将每个主页面下的子页面作为子菜单。使用 View Helpers,您可以轻松地仅自动输出当前事件页面的子页面菜单。

这种方式将您的所有导航保存在一个地方,以供将来维护。

例如,我使用 Application Resource 在 application.ini 文件中定义我的站点范围导航,然后在我的 View 脚本中使用 Navigation View Helpers格式化我的菜单。

这是我正在处理的项目中的 application.ini 文件导航配置的一小段摘录:

resources.navigation.pages.exhibits.label                   = "Exhibits"
resources.navigation.pages.exhibits.controller = "exhibits"
resources.navigation.pages.exhibits.action = "index"
resources.navigation.pages.exhibits.pages.index.label = "Search Exhibitors"
resources.navigation.pages.exhibits.pages.index.controller = exhibits
resources.navigation.pages.exhibits.pages.index.action = index
resources.navigation.pages.exhibits.pages.search.label = "Search Exhibits"
resources.navigation.pages.exhibits.pages.search.controller = exhibits
resources.navigation.pages.exhibits.pages.search.action = "search"
resources.navigation.pages.exhibits.pages.new.label = "New Exhibitor"
resources.navigation.pages.exhibits.pages.new.controller = exhibits
resources.navigation.pages.exhibits.pages.new.action = "new"
resources.navigation.pages.exhibits.pages.import.label = "Import Exhibits"
resources.navigation.pages.exhibits.pages.import.controller = exhibits
resources.navigation.pages.exhibits.pages.import.action = "import"

resources.navigation.pages.sales.label = "Sales"
resources.navigation.pages.sales.controller = "sales"
resources.navigation.pages.sales.action = index
resources.navigation.pages.sales.pages.index.label = "Review/Search"
resources.navigation.pages.sales.pages.index.controller = sales
resources.navigation.pages.sales.pages.index.action = index
resources.navigation.pages.sales.pages.edit.label = Add/Edit Sales
resources.navigation.pages.sales.pages.edit.controller = sales
resources.navigation.pages.sales.pages.edit.action = edit
resources.navigation.pages.sales.pages.flags.label = Flags/Problems
resources.navigation.pages.sales.pages.flags.controller = sales
resources.navigation.pages.sales.pages.flags.action = flags

在我的 layout.phtml 文件中:

<div id='mainmenu'>
<?php echo $this->navigation()->menu()->setMaxDepth(0); ?>
</div> <!-- #mainmenu -->
<div id='submenu'>
<?php echo $this->navigation()->menu()->setOnlyActiveBranch(true)
->setMinDepth(1)
->setMaxDepth(1); ?>
</div> <!-- #submenu -->

因此,当用户转到展览页面时,他们只能看到该页面的子页面,销售页面也是如此。非常简单而且非常有效。

关于php - 我应该在哪里填充我的 Zend_Navigation 容器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5722331/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com