Drupal от голландского слова druppel ("капля") — система управления сайтом (CMS). Большой набор возможностей и гибкость сделали Drupal популярным как среди начинающих веб-мастеров, так и среди профессионалов.
Drupal может быть использован для построения различных типов сайтов: новостных порталов, корпоративных сайтов, интернет-сервисов и даже личных страниц – возможности этой CMS практически безграничны.
В данной статье в качестве примера мы рассмотрим построение на основе Drupal такого популярного вида сайтов, как сайт интернет-сообщества.
Установка
Простая установка и настройкаDrupal не предъявляет каких-либо специфических требований к хостингу — для установки требуются поддержка PHP 4-й или 5-й версии и база данных (обычно MySQL, но поддерживаются также PostgreSQL и MS SQL ).
Благодаря усилиям русскоязычного сообщества пользователей Drupal подготовлен полный русский перевод базовой конфигурации.
Загрузив уже полностью русифицированный дистрибутив на основе самой свежей, на момент написания статьи, сборки Drupal (версия 5.1), следует разархивировать ее в соответствующую директорию на сервере. Набрав адрес вашего сайта в браузере и указав данные для подключения к базе данных, вы получите установленный и готовый к работе сайт.
Установка Drupal |
По умолчанию будет создана учетная запись администратора сайта (имя: admin, пароль: admin, электронная почта: admin@mydrupalsite.ru).
Настройка
Настройки сайта находятся в разделе "Управление сайтом – Настройка – О сайте" – здесь можно указать название сайта, слоган, который будет отображаться в заголовке сайта, основной адрес электронной почты.
Выбор цветового решения |
Внешний вид сайта можно изменить в разделе "Управление сайтом — Конструкция – Оформление" – здесь можно как выбрать из нескольких предустановленных шаблонов, так и изменить цветовое решение некоторых тем.
Интересная возможность: в разделе "Управление сайтом — Настройка – Чистые ссылки" можно включить (если у хостера установлен модуль mod_rewrite) популярные сейчас ЧПУ (человекопонятный URL). Рекомендуется эту возможность включить.
Определение функциональности сайта
Основная задача сайта сообщества, который мы создаем, — быть местом общения для пользователей. Сайт будет состоять из форума для обсуждения каких-либо тем и личных блогов каждого из пользователей с возможностью комментирования записей.
Функциональность Drupal реализуется с помощью систем подключаемых модулей – это позволяет легко добавить необходимые возможности и использовать только те функции, которые необходимы.
Мудули, реализуюшие необходимую нам функциональность — блоги и форум, входят в стандартную сборку Drupal и уже установлены в системе.
Для включения этих модулей в разделе "Управление сайтом – Конструкция – Модули" отмечаем Blog и Forum, сохраняем сделанные настройки – и необходимая нам функциональность добавлена.
Организация структуры сайта
Нода – ключевое понятие в структуре DrupalВесь контент в системе Drupal организован в сущности, называющиеся node (ноды). Нода — это основная единица информации. В терминах Drupal нодой следует называть не страницу сайта, а, например, пост в блоге или форуме. Нодами разных типов в Drupal является абсолютно все – статьи, посты в форума или блогах, новости, изображения и т. д., то есть любой контент. И принципы работы с любым контентом также одинаковы, а значит, для системы нет разницы между топиком форума и новостью, и вы легко можете вывести на первую страницу как важную новость, так и интересную дискуссию в форуме. Также вы можете собрать на одной странице сайта все материалы, объединенные одной темой, вне зависимости от их типов.
Для организации контента в Drupal используются так называемые «словари» (vocabulary) — набор разделов (рубрик) сайта так называемых «терминов» (term), по сути — категорий, по которым будет распределяться контент.
Форум |
Определим структуру нашего сайта. В разделе "Управление сайтом — Содержание – Категории" мы видим автоматически созданный словарь Forums — это темы для форума на сайте. Добавив туда необходимые термины, получим сформированный и готовый к работе форум.
Так как еще одним компонентом нашего сайта являются блоги – необходимо определить набор тем и для них. Хотя сайт на CMS Drupal может содержать сколько угодно словарей (наборов терминов) для каждого типа контента, мы не будем создавать специализированный словарь для блогов, а используем тот же самый набор тем, что и для форума. Для этого в том же разделе, где мы добавляли термины, воспользуемся функций «Изменить словарь» и в разделе «Типы» (где указаны типы материалов, которые связаны с этом словарем) кроме отмеченного «Обсуждение на форуме» также отметим «Запись в блоге». Таким образом, весь пользовательский контент нашего сайта, независимо от его типа, будет соответствовать одному из определенных нами терминов.
Настройка ролей пользователей
Создание неограниченного количества различных ролей пользователейОчевидно, что не все пользователи должны обладать равными правами в возможностями при работе в системе. Кроме администратора сайта, имеющего возможность технической настройки сайта, пользователей с правами публикации постов в блоги и форум, также понадобятся модераторы, которые, хотя и не должны иметь прав администратора, должны иметь возможность при необходимости править и удалять контент, добавленный пользователями. Drupal позволяет гибко определить возможности для разных групп пользователей.
Работа с правами доступа и группами пользователей осуществляется в разделе "Управление сайтом – Пользователи" в двух подразделах: «Роли» — где изменяются и создаются группы пользователей и «Контроль доступа» — где определяются конкретные возможности для каждой из групп.
Регистрация пользователей
Для того чтобы добавить или отредактировать контент на Drupal-сайте, посетитель, как правило, должен быть зарегистрирован как пользователь. Однако предусмотрена возможность, позволяющая посетителям оставлять анонимные посты, такие как комментарии. В некоторых случаях администратор сайта может сам регистрировать пользователей, при этом логин пользователя и пароль будут высылаться на указанный электронный адрес. В остальных случаях необходимо воспользоваться формой «Вход в систему», обычно расположенной на главной странице сайта. После нажатии на ссылку «Создать учетную запись» пользователь попадает на страницу с формой, в которую нужно ввести логин пользователя по выбору и электронный адрес, на который придет сообщение с паролем. Вход зарегистрированного пользователя осуществляется в общепринятом для CMS порядке, через указанную форму «Вход в систему».
Меню сайта
Гибкая система навигацииСоздание меню сайта в Drupal не представляет сложности и в сочетании с используемой системой организации контента позволяет реализовать наиболее подходящие для каждого конкретного случая решения. Настройка навигации по сайту осуществляется в разделе "Управление сайтом – Меню". По умолчанию у каждого пользователя есть меню «Навигация», в котором отключаются лишние пункты. Создадим еще одно меню по разделам сайта: выбираем закладку «Добавить меню».
Затем можно добавлять отдельные пункты меню, при этом в поле «Путь» можно указывать понятные имена.
Например, для форума нужно указать путь forum, и тогда этот раздел будет доступен по адресу www.ВашСайт.ru/forum. Drupal при помощи ЧПУ (человекопонятные URL) перехватит этот адрес и отыщет в базе данных то, что нужно выдавать по этому запросу. В "Управление сайтом – Псевдонимы" можно настроить то, что конкретно должно выдаваться по произвольно указанному пути, что позволяет, в отличие от многих других CMS, формировать меню и структуру сайта любым удобным способом.
Настройка страниц и блоков
Кроме добавляемых пользователем типов контента (блогов и форума в нашем случае) при установке Drupal по умолчанию идут два уже готовых типа — «Страница» и «Статья», они доступны для пользователей в разделе «Создать материал». Для этих типов контента также можно определить права доступа и создать (либо использовать уже созданный) словарь с набором терминов. Эти два типа могут быть полезны при организации сайтов практически любой направленности: контент типа «Страница» может быть использован для создания отдельных постоянных страниц сайта – адреса, контактов, а контент типа «Статья» подойдет как для собственно статей, так и для новостной ленты.
Как и в других распространенных системах, блок в Drupal — это отдельный элемент интерфейса, который располагается слева, справа, сверху или снизу от основного содержания. Для примера — рассмотренное выше меню сайта является блоком. При установке создается некоторе количество уже готовых стандартных блоков, например «Календарь», «Последние комментарии», «На сайте». Управление блоками осуществляется в разделе "Управление сайтом – Блоки". Блок можно расположить в разнообразных местах страницы, также можно задать его вес: чем меньше вес, тем выше он будет располагаться по сравнению с остальными блоками.
В данной статье описан лишь самый простейший случай использования CMS Drupal, возможности этой системы действительно огромны. Кроме того, огромное количество дополнительных модулей позволяет создать сайт практически любой сложности и функциональности. Огромным плюсом Drupal является большое профессиональное и доброжелательное сообщество пользователей и разработчиков, как международное, так и рунетовское, всегда готовое помочь новичку.
Можно с уверенностью сказать: время, потраченное на изучение CMS Drupal, не пропадет даром ни для начинающего, ни для опытного веб-разработчика.
Ссылки по теме
- Официальный сайт CMS Drupal
- Русскоязычное сообщество пользователей Drupal
- Русский инсталлятор Drupal
Статья получена: hostinfo.ru