如何链接到皮肤中的门户主页?

时间:2014-09-16 12:17:41

标签: dotnetnuke dotnetnuke-7

我们拥有自己的基于Bootstrap 3的自定义DotNetNuke 7皮肤。它包含一个navbar,其中我想要一个navbar-brand链接到主页。

是否可以在皮肤内生成门户主页的链接?

documentation page我找到Skin Objects Guide (pdf)建议[Portal:url]的链接,我尝试过这样做:

<a href="[Portal:url]" class="navbar-brand">Home</a>

毫不奇怪,这不起作用(pdf来自2009年)。来自维基的其他链接要么死了,要么没用。

我也试过浏览DotNetNuke附带的“Gravity”和“Aphelia”皮肤,但ascx文件似乎无法链接到门户网站主页。

显然我也尝试过各种形式的GoogleFu,例如: "DotNetNuke skin create link to home page",但这无处可去。

任何人都知道如何做到这一点?或者甚至更喜欢:我可以找到这个和相关的信息?或者我注定要深入研究DNN的源代码?

2 个答案:

答案 0 :(得分:7)

独自一人是危险的。拿这个:

<a href="<%= DotNetNuke.Common.Globals.NavigateURL(PortalController.GetCurrentPortalSettings().HomeTabId) %>" class="navbar-brand">Home</a>

NavigateUrl是您处理引用门户网站另一部分的goto方法。它通过URL重写,因此它将与您的其他网址保持一致。

此功能有很多签名重载,您可以在其中指定键,控制键,设置等。有关详细信息,请查看DotNetNuke.Common.Globals类。

请注意,如果您使用上述版本,则需要在admin&gt;下为您的门户设置“主页”页面。网站设置。

答案 1 :(得分:2)

在DNN 7中,最好这样做:

<%=DotNetNuke.Common.Globals.NavigateURL(PortalController.Instance.GetCurrentPortalSettings().HomeTabId) %>

请注意其中的额外Instance.。变体PortalController.GetCurrentPortalSettings()已过时。