我正在使用这段代码只用CurrentChildren创建一个DDR菜单的模板。
@using DotNetNuke.Web.DDRMenu;
@using System.Dynamic;
@inherits DotNetNuke.Web.Razor.DotNetNukeWebPage<dynamic>
@{ var root = Model.Source.root; }
<link rel="Stylesheet" href="whatever/styles.css" />
@helper RenderNodes(IList<MenuNode> nodes) {
<h1>@Dnn.Tab.TabName</h1>
if (nodes.Count > 0) {
<div class="sc-element">
<div class="row co-tiles-wrapper">
@foreach (var node in nodes)
{
if (node.Enabled) {
//whatever @node.Text
} else {
//whatever @node.Text
}
}
</div>
</div>
}
}
@RenderNodes(root.Children)
但是我现在需要在页面的开头(顶部)添加当前页面的标题。在循环过程中,它不是儿童页面的名称。而是正在加载ddr模块的页面名称。
有什么建议吗?
尝试将此添加到您的Razor模板中。
@using DotNetNuke.Entities.Portals;
<h1>@PortalSettings.Current.ActiveTab.TabName</h1>
在DNN主题中,你可以使用<%=PortalSettings.ActiveTab.TabName%>。
这和更多的例子。 https:/demo.40fingers.netdnn-framework-attributes-demo-skin。