我希望主页面上的网站标志链接始终重定向到根网站集首页。默认行为是重定向到当前网站(SPWeb)的主页。
在SharePoint 2010中,我可以通过在主页面上将SPLinkButton控件的NavigateUrl属性添加到~sitecollection值来实现此目的:
<SharePoint:SPLinkButton runat="server" NavigateUrl="~sitecollection/" id="onetidProjectPropertyTitleGraphic">
<SharePoint:SiteLogoImage name="onetidHeadbnnr0" id="onetidHeadbnnr2" LogoImageUrl="/_layouts/images/siteIcon.png" runat="server"/>
</SharePoint:SPLinkButton>
然而,在SharePoint 2013中,站点 Logo 链接的控件已经在主页面更改为 SPSimpleSiteLink。我已经尝试以相同的方式设置此控件的 NavigateUrl 属性,但似乎不再起作用。
<div id="siteIcon" class="ms-tableCell ms-verticalAlignTop">
<SharePoint:AjaxDelta id="DeltaSiteLogo" BlockElement="true" runat="server">
<SharePoint:SPSimpleSiteLink NavigateUrl="~sitecollection/" CssClass="ms-siteicon-a" runat="server" id="onetidProjectPropertyTitleGraphic" >
<SharePoint:SiteLogoImage CssClass="ms-siteicon-img" name="onetidHeadbnnr0" id="onetidHeadbnnr2" LogoImageUrl="/_layouts/15/images/siteIcon.png?rev=23" runat="server"/>
</SharePoint:SPSimpleSiteLink>
</SharePoint:AjaxDelta>
</div>
作为一种解决方法,我已经移除了AjaxDelta包装控件,并将SPSimpleSiteLink更改为具有添加了NavigateUrl属性的旧SPLinkButton。这似乎起作用了。
还有更好的解决方法吗?