sharepoint - sitio - ¿Cómo desactivo programáticamente las páginas de muestra en navegación para compartir?
personalizar sitio sharepoint online (2)
No estaba seguro pero pude localizar esto :
La modificación de la navegación es otra tarea de marca común, ya que afecta lo que los usuarios pueden ver y cómo pueden avanzar a través de una jerarquía de sitios. El espacio de nombres Microsoft.SharePoint.Publishing expone varias clases que se dirigen a la infraestructura del sitio de publicación, como PublishingWeb y PublishingPage. Usando estas clases, podemos modificar fácilmente la navegación para cada sitio. Si desea que un Web hijo se muestre como un sitio de nivel raíz en la navegación global, primero desactive la herencia del sitio principal, de esta forma:
publishingWeb.InheritGlobalNavigation = false;
Es posible que también desee ocultar todas las páginas del sitio de la navegación global. Establecer IncludePagesInNavigation como falso oculta todas las páginas del sitio, independientemente de si la propiedad PublishingPage.IncludeInGlobalNavigation está establecida en true
// do not show pages in navigation
publishingWeb.IncludePagesInNavigation = false;
Si se trata de sitios predeterminados que no heredan de PublishingWeb, aún es posible ocultar estos sitios de la barra de navegación global. Por ejemplo, si crea una colección de sitios utilizando la plantilla del portal de colaboración y desea excluir el sitio Noticias de la navegación global, agregue ese sitio a la propiedad __GlobalNavigationExcludes del sitio:
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();
Agregar nodos de navegación directamente a SPNavigationNodeCollection es una buena forma de mostrar solo los nodos que desea, así como agrupar nodos y enlaces a sitios externos. La Figura 10 muestra cómo agregar un enlace interno, un enlace externo y un encabezado a la barra de navegación global. Este ejemplo aborda algunas de las propiedades de la clase SPNavigation que afectan si el enlace se abre en una nueva ventana y cómo manejar las URL vacías.
Estoy creando un sitio de SharePoint de manera programática
SPWeb spWeb = spSite.AllWebs.Add(...);
¿Qué código necesito ejecutar para configurar spWeb para desactivar la opción "Mostrar páginas en navegación"?
Responder:
publishingWeb.IncludePagesInNavigation = false;
Para SP 2010, use debajo ...
publishingWeb.Navigation.GlobalIncludePages = false;