DNN DDR模块 - 获取当前页面的名称和描述。

问题描述 投票:0回答:1

我正在使用这段代码只用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模块的页面名称。

有什么建议吗?

c# razor dotnetnuke dnn-module
1个回答
1
投票

尝试将此添加到您的Razor模板中。

@using DotNetNuke.Entities.Portals;

<h1>@PortalSettings.Current.ActiveTab.TabName</h1>

在DNN主题中,你可以使用<%=PortalSettings.ActiveTab.TabName%&gt。

这和更多的例子。 https:/demo.40fingers.netdnn-framework-attributes-demo-skin。

© www.soinside.com 2019 - 2024. All rights reserved.