如何在100个站点上隐藏SharePoint选项卡? (SP2010)

时间:2010-09-13 18:51:11

标签: sharepoint

我在SharePoint 2010中有100个团队网站。在最后一刻,我被要求隐藏每个网站上的标签。通过GUI,我可以通过使用“站点设置”下的“导航”选项来完成此操作,但我必须为所有100个站点执行此操作。有没有办法以编程方式执行此操作?或全局通过GUI(我怀疑这是一个选项)?我尝试过使用JQuery,但由于滞后,它不是一个可行的选择。我想也许有可能写一个powershell脚本来做到这一点 - 我还是新的PowerShell。

思考?感谢。

1 个答案:

答案 0 :(得分: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();

此脚本将隐藏标题为“Test”的所有节点。您还可以使用Url属性来确定是否需要隐藏节点。<​​/ p>

我希望您需要更改网站集“http://yoursite”中100个子网站的导航。

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