2010-09-13 58 views
1

我在SharePoint 2010中有100个工作组站点。在最后一刻,我被要求隐藏每个站点上的选项卡。通过GUI,我可以通过使用“网站设置”下的“导航”选项来完成此操作,但是我必须为所有100个网站执行此操作。有没有办法做到这一点编程?或者全球通过GUI(我怀疑这是一个选项)?我试过使用JQuery,但由于时滞,这不是一个可行的选择。我想也许有可能写一个PowerShell脚本来做到这一点 - 我只是还没有接触过PowerShell。如何隐藏100个网站上的SharePoint选项卡? (SP2010)

想法?谢谢。

回答

1

你应该使用这样的事情在你的控制台应用程序:

SPSite site = new Site("http://yoursite"); 
foreach (SPWeb web in site.AllWebs) 
{ 
    foreach(SPNavigationNode node in web.Navigation.TopNavigationBar) 
    { 
     if (node.Title == "Test") 
     { 
      node.IsVisible = false; 
      node.Update(); 
     } 
    } 
    web.Dispose(); 
} 
site.Dispose(); 

这个脚本会隐藏所有节点标题为“测试”。您还可以使用Url属性来确定节点是否需要隐藏。

在这里,我期望,你需要改变网站集“http://yoursite”中的100个子网站的导航。

P.S.请确保您在控制台应用程序中定位了.Net Framework 3.5,并且在Visual Studio项目属性中指定了AnyCPU平台。或者您可能会收到错误,指出您的网站未找到。

相关问题