2010-03-11 44 views
0

我在sharepoint中有一個需求,我想要根據excel文件創建頂級鏈接導航。意思是在excel文件中提到站點導航結構(以及父站點下的父站點子站點)。我需要閱讀該結構並基於修改SharePoint中的導航。Sharepoint通過編程創建網站導航

請任何人都可以告訴我是否有可能以這種方式配置導航。如果是,那麼請告訴我如何實現它。

FYI:我使用MOSS 2007

在此先感謝

薩欽katkar

回答

1

如果這是一個發佈網站,你可以使用類似的代碼如下:

PublishingWeb publishingWeb = PublishingWeb.GetPublishingWeb(SPContext.Current.Web); 
SPNavigationSiteMapNode.CreateSPNavigationNode(title, url, NodeTypes.AuthoredLinkToPage, publishingWeb.GlobalNavigationNodes); 
publishingWeb.Update(); 
1

是的,你可以做到這一點。

我也有幾乎相同的要求。我做這個任務通過以下方式

  1. 使用SharePoint Designer創建的WebPart讀取Excel文件,然後菜單
  2. 打開母版和評論,其呈現頂部導航的線,並將新的WebPart有
  3. 在其子網站中繼承此主頁。

如果你想要更多的幫助,請問我,我可以幫你

0

哇,這似乎是一個非常糟糕的主意。爲什麼不使用SharePoint列表來填充靜態菜單?創建起來更容易,速度更快,因爲它不需要打開Excel工作表,並且可以根據需要從Excel工作表中複製和粘貼值。

或者,我使用Excel表來收集有關SharePoint網站結構的數據,例如,什麼網站,模板和子網站等。從該Excel工作表生成一個腳本,使用http://stsadm.blogspot.com 中的命令構建網站結構。這樣,您的菜單將遵循Excel工作表的數據,並且不會有笨拙的自定義代碼。

0

有兩種方式可以實現這一點 - 無論是添加/現有的SharePoint導航結構中刪除節點,或更改菜單控件使用的數據源。

要修改標準的導航設置(navivagation定製繼續工作,因爲它通常不開箱)使用上

web.Navigation.TopNavigationBar 

另一種選擇涉及編輯母版頁(或相應的委託控制)方法並將AspMenu和SiteMapDataSource元素更改爲使用不同的SiteMapProvider。您可以創建自己的實現,也可以使用從xml文件中讀取的實現。如果選擇此選項,用戶將無法通過導航設置編輯菜單。