我得到了一个发布网站的页面布局,它有一个奇怪的行为。
假设一个发布站点( site )具有一个子站点(subsite1),该子站点具有以下页面(page1 default、page2和page3)
对于第2页和第3页,breadcrumb会正确呈现:
site > subsite1 > page2
site > subsite1 > page3但是,对于默认页面,breadcrumb仅呈现为
site > subsite1你知道如何强制它也显示默认页面的标题吗?
发布于 2008-10-29 15:54:25
经过多次搜索和反复失败后,我决定使用AJAX include。在任何人指责我使用devils语言(VB.Net)之前,我只是像其他使用和维护这段代码的开发人员一样使用它,所以他们必须能够阅读它……
include完成了以下操作:
这不是最终的代码(今晚我将对其进行重构):
Dim lsPage = Request.Item("CurrentPage")
Dim TravelURL as string = "http://site/"
Dim aryURLSections() = lsPage.Replace(TravelUrl, "").Split("/")
Dim i as integer
Response.Write("<span class='breadcrumbCurrent'>You are in ></span> <span class='ms-sitemapdirectional'><a href='" & TravelUrl & "' title='Home'>Home</a> > </span>")
for i = 0 to (aryURLSections.Length -1)
Dim PositionString as string = aryURLSections(i)
if PositionString.Contains(".aspx") then
'Render page
Dim psite as SPSite = new SPSite(TravelUrl)
Dim pobjSite As SPWeb = psite.OpenWeb()
Dim lList as SPList
Dim lPage As SPListItem
lList = pobjSite.Lists("Pages")
If Not lList Is Nothing Then
For Each lPage In lList.Items
IF lsPage.ToUpper.Contains(lPage.Url.ToUpper) Then
Response.Write("<span class='breadcrumbCurrent' >" & lPage.Title & "</span>")
Else
'Response.Write("<br>" & lPage.Url & " " & lsPage)
End If
Next
End if
Else if PositionString.Equals("Pages")
' do nothing
else
'render site
TravelUrl = TravelUrl & PositionString & "/"
'Response.Write(TravelUrl & " > ")
Dim site as SPSite = new SPSite(TravelUrl)
Dim objSite As SPWeb = site.OpenWeb()
Dim PubWeb = PublishingWeb.GetPublishingWeb(objSite)
Response.Write("<span class='ms-sitemapdirectional'><a href='" & TravelUrl & "' title='" & PubWeb.Title & "'>" & PubWeb.Title & "</a> > </span>")
End if
Next ihttps://stackoverflow.com/questions/240427
复制相似问题