На сайтах SharePoint есть панель навигации, которая располагается слева и предназначена для удобного перехода по разделам сайта. Ее можно наполнять и изменять двумя способами: через кнопку «Изменить ссылки» или через Параметры сайта → Быстрый запуск. По умолчанию SharePoint создает ссылку «Содержимое сайта», которую можно убрать, если она не нужна, двумя вышеописанными способами. Но что если эта ссылка отображается на сайте, а в настройках ее нет, и к тому же кнопка «Изменить ссылки» отсутствует?
Так было у меня, и я стал думать, как решить эту проблему. В качестве исходных данных допустим, все полные права на сайт у нас есть и мы находимся в корневом сайте коллекции. Я упомянул здесь корневой, потому что если мы находимся в дочернем сайте, то он может наследовать навигацию у родительского и править ее на текущем сайте не получится. В общем, кнопки «Изменить ссылки» у панели навигации нет и причиной тому, скорее всего, является особенность выбранного шаблона сайта.
Какие есть варианты решения проблемы? Можно изменить шаблон или скрыть ссылку через CSS. Наиболее элегантным будет применение стиля CSS.
Результат достигается изменением настроек главной страницы. Они меняются по URL вида:
http://[сайт]/_layouts/15/ChangeSiteMasterPage.aspx
Перейдя туда, нужно указать URL-адрес альтернативной таблицы CSS. Предварительно нужно подготовить этот самый файл CSS. Итак, нужно скрыть ссылку на странице. Любым браузерным средством инспекции кода страницы узнаем идентификатор этой ссылки и делаем для нее стиль. Например, такой:
a#ctl00_PlaceHolderLeftNavBar_PlaceHolderQuickLaunchBottom_idNavLinkViewAll { visibility:hidden; }
Данный стиль располагаем в файле CSS, который затем загружаем через веб-интерфейс SharePoint по указанному выше адресу. Теперь ссылка отображаться не будет.
Для полноты картины расскажу, как скрыть ссылку «Содержимое сайта» через шаблон. Для изменения шаблона нужно запустить SharePoint Designer, перейти на нужный сайт и в левой колонке выбрать «Главные страницы». Откроется список шаблонов. Допустим, у нас шаблон по умолчанию seattle.master, тогда надо его отредактировать. В редакторе кода просто закомментировать участок кода, отвечающий за вывод пункта меню «Содержимое сайта». Это содержимое блока с идентификатором PlaceHolderQuickLaunchBottom.
Этот способ мне понравился меньше, потому что грубее вмешательство в код SharePoint.