В SharePoint изначально реализован определенный дизайн сайтов. Имеется набор цветов, шрифтов, разметок страниц и средств навигации, встроенный в стандартные шаблоны сайтов. При их разработке стремились, чтобы их «буква и дух» отлично подходили универсальным корпоративным сайтам, но иногда вид сайтов может показаться пресным и утилитарным. К счастью, в SharePoint имеется ряд средств, позволяющих весьма гибко настраивать отображение контента. Процесс изменения «буквы и духа» в масштабе сайта называют брендингом (branding).
Имеются разные способы отражения фирменного стиля в сайтах SharePoint. Можно изменить стандартные цвета и шрифты сайта, используя темы, или изменить всю разметку страниц с помощью главных страниц (master pages). Кроме того, с помощью настройки главных страниц можно изменить средства навигации по сайту в тех случаях, когда они внедрены в виде набора собственных элементов управления SharePoint, отображающих меню в веб-браузере. Ниже рассказывается от том, как применять эти дизайнерские компоненты.
Главные страницы
Главные страницы позволяют нескольким страницам наследовать свою структуру и другие типовые элементы от общего исходного файла. Главная страница, как правило, содержит HTML-тэги, определяющие разметку страницы, с «областями контента», выделенными для контента, специфичного для страниц. Кроме того, главные страницы содержат веб-элементы управления (Web control), общие для всех страниц, такие как навигационные меню и общие CSS-ссылки.
SharePoint расширяет функциональность главных страниц ASP.NET, управляя связями между главными страницами и страницами, которые их используют. Вы можете связать свой сайт SharePoint с новой главной страницей и тем самым полностью изменить его разметку и внешний вид.
Файл вашей главной страницы будет храниться в Master Page Gallery (галерея главных страниц), автоматически создаваемой для всех сайтов SharePoint. Следует ограничиться использованием только корневой Master Page Gallery, если у вас нет веских причин поступить по-другому. Если вы разбросаете файлы главных страниц на различные случаи жизни по всему набору сайтов, ситуация быстро станет неуправляемой.
Кроме того, хорошая идея — ограничить количество пользователей, уполномоченных создавать, редактировать и применять главные страницы из галереи. Это можно сделать, задав соответствующие разрешения на доступ к самой галерее. Следует запретить или ограничить доступ к любым главным страницам, не являющимся стандартными для вашей среды. Этим вы предотвратите их использование по ошибке.
Темы
Если вы знакомы с темами из предыдущих версий SharePoint, то темы SharePoint 2010 покажутся вам совершенно новыми. В Microsoft Office 2010 используется новый движок тем (theming engine), внедренный в различные приложения Office, в частности в SharePoint.
Говоря конкретнее, темы значительно переросли упрощенную концепцию, которая использовалась в прошлом. В Office 2010 темы представляют собой уже не набор CSS-файлов и изображений, а небольшой набор объявлений шрифтов и цветов. Как правило, они хранятся в файлах с расширением THMX. Когда вы применяете тему к сайту SharePoint, движок тем обрабатывает набор стандартных CSS-файлов, создавая «настоящие» CSS-файлы, передаваемые в веб-браузер пользователя.
В отличие от предыдущих версий, вам не следует изменять эти стандартные CSS-файлы. Вместо этого, если вам нужны дополнительные CSS-определения, поместите их в отдельные файлы, применяемые без участия движка тем.
Файлы тем хранятся в Theme Gallery (галерея тем) — специальной библиотеке, входящий в каждый набор сайтов SharePoint site. В частности, в Theme Gallery содержится стандартный набор тем. Если ваша организация намерена поддерживать корпоративный стиль, начните с запрета или ограничения доступа к файлам тем из этой галереи. Типовая методика — поместить одну согласованную тему в галерею, используемую всеми сайтами. Можно также ограничить права на редактирование и создание тем, чтобы не позволить пользователям создавать свои собственные темы. Этим вы обеспечите соблюдение стандартов своей организации.
В некоторых случаях может потребоваться оставить в Theme Gallery более одной темы, чтобы создать различные стили или типы сайтов. Различные подразделения компании могут иметь свои собственные стили, которые им нужно поддерживать. Кроме того, в сайтах, предназначенных для широкой публики, может использоваться строго определенная тема, тогда как в сайтах для внутреннего пользования или доступных только в расширенной интрасети (extranet) может допускаться большая гибкость.
Ключевой момент, о котором нужно помнить, — то, что Theme Gallery существует на уровне набора сайтов. Области сайта, для которых нужны разные наборы тем, — скорее всего, хорошие кандидаты на помещение в разные наборы сайтов.
Темы организации, как правило, создаются отделом дизайна или маркетинга. Темы можно создавать в приложении Office, таком как PowerPoint 2010, и экспортировать в THMX-файлы. Эти файлы можно закачивать в галерею через веб-браузер или как часть пакета решения, создаваемого разработчиком. Этот выбор зависит от того, как вы собираетесь управлять темами. Если за управление темами отвечает не ИТ-отдел, их обычно развертывают с помощью веб-браузера. Группы разработки приложений обычно используют для развертывания своих тем пакеты решений.
Бывает, что вам нужно расширить стандартные CSS-файлы, используемые SharePoint. В этом случае имеется несколько способов добавления информации о стиле в страницу. Можно добавить тэги стиля в главную страницу или в области контента отдельных страниц. Однако в результате может усложниться облуживание сайта, поскольку вся информация о стиле не будет находиться в одном месте.
Лучшее решение — создать отдельные CSS-файлы и развернуть их на сайте. В SharePoint имеется элемент управления CSSRegistration, предназначенный для добавления собственных CSS-файлов в набор файлов, предоставляемый SharePoint. Этот элемент управления позволяет поместить ссылку на заданный файл до или после других таблиц стилей страницы, чтобы стили содержались в странице в нужном порядке.
Можно развернуть CSS-файлы сами по себе, используя пакет решения, или поместить их на сайт как файлы контента. Элемент управления CSSRegistration, как правило, внедряется в главную страницу сайта.
Сайты публикации
Еще один способ реализации стилей для своего сайта — применение сайтов публикации (publishing site). Функция публикации SharePoint создает среду, более удобную для управления важным контентом. Эту функциональность часто называют управлением веб-контентом. Уполномоченный пользователь может редактировать контент сайта публикации и отправлять его на согласование.
Сайты публикации отличаются от остальных сайтов типами доступных элементов управления. Они могут быть полезными при создании и согласовании контента:
- Изменения контента на сайтах, не являющихся сайтами публикации, становятся видимым всем пользователям сразу же после того, как их сохранили. Изменения сайта публикации не видимы до тех пор, пока их не согласуют.
- Можно запланировать появление или исчезновение контента на сайте публикации в заданное время в будущем.
- Вы можете настроить процесс согласования на сайте публикации с помощью движка рабочих процессов SharePoint.
- В сайтах публикации реализована дополнительная функциональность поддержки таблиц стилей, навигации и управления главными страницами, применяемыми к сайту.
- Можно подготовить изменения контента в отдельной среде и перенести их на производственную ферму, используя пути развертывания контента (content deployment paths). Этим вы предотвратите случайную публикацию неразрешенных или непроверенных изменений на общедоступном веб-сайте. Можно поддерживать сложную топологию разработочных, обкаточных и производственных серверов.
Страницы сайта публикации содержат дополнительный структурный уровень — так называемую страницу разметки (layout page). Страницы разметки аналогичны главным страницам, но поддерживают функции редактирования контента и публикации, удобные для пользователей, не являющихся техническими специалистами. Страницы разметки хранятся в Master Page Gallery. Контент разбит на уровни, в середине которых находится страница разметки. В случае сайта публикации контент, применяемый к странице разметки, обрабатывается скорее как поля данных, чем как HTML или веб-части.
Сайты публикации чаще всего используют не как сайты для совместной работы. Благодаря наложению ограничений на создание и согласование контента, они идеальны для общедоступных веб-сайтов и страниц уровня корпорации или подразделения, публикуемых в интрасети. Сайты, не являющиеся сайтами публикации, лучше всего подходят для управления проектами и неформального обмена информацией.
Шаблоны сайтов
Один из лучших способов обеспечить соответствие стандартам — упростить следование им. Шаблоны сайтов — отличная начальная точка. Когда пользователь создает новый сайт, за основу всегда берется один из доступных шаблонов сайтов. При этом создается заранее определенный набор списков, библиотек, главных страниц и даже контента. Создав набор стандартных шаблонов для своей организации, вы поможете пользователям создавать единообразные сайты.
Шаблон сайта в SharePoint 2010 — файл пакета решения (.wsp), содержащий данные сайта, используемые при его первоначальном создании. Самый простой способ создать шаблон сайта — сохранить существующий сайт как шаблон, используя параметр Save Site as a Template на странице Site Settings.
SharePoint поместит все списки, библиотеки, формы, рабочие процессы, страницы и элементы контента (если это вам нужно) в один файл, хранящийся в Solution Gallery. Solution Gallery содержит пакеты решений, развертываемые в локальном наборе сайтов.
Шаблон сайта можно настраивать в Visual Studio. Разработчики могут скачать файл шаблона и импортировать его в новый проект Visual Studio. При этом все артефакты, помещенные в шаблон, будут доступны для редактирования. После завершения настройки вы можете перекомпилировать шаблон и заново развернуть его в Solution Gallery. Таким образом, можно создать именно те шаблоны сайтов, которые нужны вашей организации.
Однако у шаблонов сайтов имеются и некоторые ограничения. Имеются кое-какие элементы исходного файла, которые не отражаются в файле решения шаблона:
- Не запоминаются разрешения, хранящиеся внутри сайта.
- Выполняемые рабочие процессы и любые связанные с ними задания не сохраняются как содержимое шаблона.
- Не сохраняются некоторые типы полей, в частности, поля, описывающие людей и группы, и управляемые метаданные.
Вы можете создавать шаблоны сайтов, только используя определенные типы сайтов. My Sites и сайты публикации зависят от элементов, которые вы не можете сохранить в файле шаблона. Следовательно, для этих типов сайтов сохранение в виде шаблона не поддерживается. Тем не менее, вы можете создавать шаблоны для этих сайтов, но в средствах разработки, таких как Visual Studio.
Поскольку шаблоны сайтов хранятся в Solution Gallery, возможность их создания и использования определяется разрешениями на Solution Gallery. После создания в Solution Gallery шаблон сайта доступен всем пользователям, имеющим разрешения, необходимые для создания сайтов в наборе сайтов.
Чтобы скрыть сохранение в виде шаблона, вы должны включить функцию публикации на SharePoint Server. Тогда на странице Site Settings появится настройка Page Layouts and Site Settings. Забавно, что включение публикации, даже на сайте, основанном на шаблоне, не поддерживающем публикацию, не позволяет сохранять сам сайт как шаблон.
При определении того, какие шаблоны сайтов допустимы к использованию в вашей среде и кто имеет доступ к этим шаблонам, важную роль играет четкое и тщательное планирование.