Nat*_*Nat 4 navigation sharepoint moss spweb
我正在使用创建一个SharePoint站点
SPWeb spWeb = spSite.AllWebs.Add(...);
Run Code Online (Sandbox Code Playgroud)
我需要运行什么代码来设置spWeb以关闭"在导航中显示页面"选项?
回答:
publishingWeb.IncludePagesInNavigation = false;
Run Code Online (Sandbox Code Playgroud)
不确定自己,但我能够找到这个:
修改导航是另一种常见的品牌推广任务,因为它会影响用户可以看到的内容以及他们如何通过站点层次结构进行操作.Microsoft.SharePoint.Publishing命名空间公开了几个以发布站点基础结构为目标的类,例如PublishingWeb和PublishingPage.使用这些类,我们可以轻松修改每个站点的导航.如果您希望子Web在全局导航中显示为根级别站点,请首先关闭父站点的继承,如下所示:
publishingWeb.InheritGlobalNavigation = false;
Run Code Online (Sandbox Code Playgroud)
您可能还想隐藏全局导航中的所有网站页面.将IncludePagesInNavigation设置为false会隐藏站点中的所有页面,无论PublishingPage.IncludeInGlobalNavigation属性是否设置为true
// do not show pages in navigation
publishingWeb.IncludePagesInNavigation = false;
Run Code Online (Sandbox Code Playgroud)
如果您正在处理未从PublishingWeb继承的默认站点,则仍可以从全局导航栏隐藏这些站点.例如,如果使用协作门户模板创建网站集并希望从全局导航中排除新闻网站,请将该网站添加到网站的__GlobalNavigationExcludes属性中:
string globalNavExcludes = String.Empty;
SPWeb webSite = MSDNSiteCollection.RootWeb;
// _GlobalNavigationExcludes property contains a delimited string of
// GUIDs identifying the Id of each site to be excluded from global
// navigation
if (webSite.AllProperties.ContainsKey("__GlobalNavigationExcludes")) {
globalNavExcludes =
webSite.AllProperties["__GlobalNavigationExcludes"].ToString();
}
SPWeb newsSite = MSDNSiteCollection.AllWebs["News"];
// string is delimited "{GUID};{GUID};",
// use format code B to convert to string
globalNavExcludes += String.Concat(currentWeb.ID.ToString("B"), ";");
webSite.AllProperties["__GlobalNavigationExcludes"] = globalNavExcludes;
webSite.Update();
Run Code Online (Sandbox Code Playgroud)
将导航节点直接添加到SPNavigationNodeCollection是一种仅显示所需节点以及将节点和链接分组到外部站点的好方法.图10显示了如何将内部链接,外部链接和标题添加到全局导航栏.此示例解决了SPNavigation类的一些属性,这些属性会影响链接是否在新窗口中打开以及如何处理空URL.
归档时间: |
|
查看次数: |
8613 次 |
最近记录: |