Как скрыть вкладку SharePoint на 100 сайтах? (SP2010) - PullRequest
1 голос
/ 13 сентября 2010

У меня есть 100 сайтов групп в SharePoint 2010. В последнюю минуту меня попросили скрыть вкладку на каждом из этих сайтов. Через графический интерфейс я мог бы сделать это, используя параметр навигации в разделе «Настройки сайта», но мне пришлось бы сделать это для всех 100 сайтов. Есть ли способ сделать это программно? Или глобально через GUI (я сомневаюсь, что это вариант)? Я пытался использовать JQuery, но из-за задержки, это не жизнеспособный вариант. Я подумал, что также может быть возможность написать сценарий powershell для этого - я только новичок в powershell.

Мысли? Спасибо.

1 Ответ

1 голос
/ 13 сентября 2010

Вы должны использовать что-то вроде этого в своем консольном приложении:

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, чтобы определить, нужно ли скрывать узел.

Здесь я ожидаю, что вам нужно изменить навигацию 100 дочерних сетей в семействе сайтов "http://yoursite".

P.S. Убедитесь, что вы нацелены на .Net Framework 3.5 в своем консольном приложении, а платформа AnyCPU указана в свойствах проекта Visual Studio. Или вы можете получить сообщение о том, что ваш сайт не найден.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...