如何在Orchard CMS中创建自定义导航菜单

本文关键字:创建 自定义 导航 菜单 CMS Orchard | 更新日期: 2023-09-27 18:18:33

我们正在使用带有自定义主题的Orchard CMS,该主题定义了自己的Layout.cshtml。我们希望在这个布局中创建一个占位符,它应该由具有自己的菜单项的模块填充,这取决于用户权限。

这与管理导航菜单非常相似,但它应该更简单。我们只需要布局中的占位符来连接解决方案中启用的模块公开的所有菜单项(可能将它们封装在HTML列表中,但仅此而已)。

你会怎么做?

看起来区域应该是要走的路,但是我不知道模块如何用元素填充区域。也许是一个形状提供程序(类似于INavigationProvider),它将被区域显示引擎调用(你把代码放在哪里?)来检索所有的形状来动态渲染,所以我们可以在区域标记中执行foreach

如何在Orchard CMS中创建自定义导航菜单

为什么不直接添加几个按钮,然后用javascript重定向到不同的路由,用方法在控制器中捕获它们,然后在routes .cs

中添加新的路由呢?