Drupal

Drupal: полное практическое руководство (часть 1)

Данный материал является незаменимым руководством для начинающих друпальщиков, поскольку в нем рассматриваются не только установка и базовые принципы, но и два из «трех китов» Друпал-сайтостроения — Views и CCK

Drupal: полное практическое руководство (часть 1)
Поделиться в соцсетях:

Самое приятное, что вся статья посвящена практическому созданию полезного сайта (доски объявлений). Право, во времена Друпала 4.7, когда я только начинал с ним знакомиться, о таких подробных и внятных руководствах можно было только мечтать.

Начинаем работать с Drupal: полное практическое руководство

Drupal (Друпал) — это популярная система управления контентом с открытым исходным кодом. Из-за ее мощного функционала разрабатывать сложные сайты на Друпале значительно проще, чем писать их с нуля. Неудивительно, что благодаря многочисленному сообществу пользователей и огромному количеству модулей, мы слышим о Друпале все чаще и чаще.

В этом руководстве мы на практике откроем для себя Друпал и создадим сайт с новым типом содержимого и страницами для его вывода.

Готовы? Погружаемся в исключительно мощную систему управления контентом!

Задачи

По прочтении данного руководства вы:

  • узнаете о достоинствах и недостатках Друпала;
  • установите Друпал;
  • поймете принцип его работы;
  • узнаете о модулях Друпала;
  • научитесь работать со страницами администрирования;
  • создадите и опубликуете содержимое сайта;
  • настроите свой тип содержимого с помощью CCK;
  • научитесь создавать представления для вывода содержимого с помощью модуля Views;
  • создадите представления со страничным отображением;
  • создадите представления с блочным отображением;
  • узнаете о темах оформления.

Что мы сделаем

Мы разработаем сайт на Друпале с доской объявлений о вакансиях, куда посетители смогут добавить вакансии и проекты. Наша цель состоит именно в том, чтобы вы сразу начали создавать сайты, а не просто читали, как это делается.

Почему именно Drupal?

Сперва коротко рассмотрим, какие достоинства (и недостатки) имеет Друпал, чтобы вы могли определиться, подходит ли вам данная CMS.

Достоинства

Открытый код. Да, Друпал распространяется с открытым исходным кодом, а это значит — вам доступны все плюсы открытого ПО.

Гибкость конфигурирования. Главное достоинство Друпала кроется в его гибкой архитектуре. Вы можете применять его для построения сайтов любых типов: от социальных медиа-сайтов, позволяющих пользователям размещать собственное содержимое и голосовать за него, форумов и сайтов с вакансиями до галерей или публикаций портфолио дизайнеров. Друпал отлично справится с поставленной задачей (конечно, для этого вам придется немножко потрудиться).

Многочисленное и грамотное сообщество разработчиков. Вокруг Друпала сложилось многочисленное, яркое и открытое сообщество пользователей и разработчиков. Это значит, вам доступны отличные модули, своевременное исправление багов и обновление ядра, а также неиссякаемый поток документации и руководств в сети.

Модули. Для Друпала разработано огромное число модулей, расширяющих его исходный функционал (о том, что такое модуль, мы поговорим немного позже).

Легкость для разработчиков. Как веб-разработчик, вы не почувствуете ограничений при работе с Друпалом. Ведь Друпал разрабатывался с учетом потребностей именно разработчиков. Ошибкой некоторых основных CMS является чрезмерное акцентирование на пользовательском интерфейсе, что часто влечет недостаток внимания к нуждам тех, кто, собственно, будет разрабатывать и продвигать систему в дальнейшем. Но с Друпалом это не так.

Встроенная система кеширования. Друпал располагает встроенной системой кеширования, способной снизить нагрузку на сервер и сократить время генерации страницы. Кеширование позволяет избежать сложных запросов к базе данных, что повышает производительность сервера.

Достойная встроенная поисковая система. В отличие от других CMS, в Друпале есть очень неплохая система поиска, реализованная на уровне ядра. Конечно, она не может конкурировать с такими поисковыми сервисами как Google Search, или Yahoo! Search BOSS, но тем не менее вполне пригодна для работы.

Недостатки

Длительный процесс обучения. Да, это факт, что изучение Друпала дается несколько труднее, чем изучение других CMS. Я бы не рекомендовал Друпал, если вы хотите сделать первый сайт уже через неделю знакомства. У вас уйдет не один месяц, чтобы по-настоящему понять Друпал, и еще столько же на создание первого полноценного сайта. Однако следует заметить, что небольшой сайт вы сможете создать меньше, чем за день (именно этим мы с вами и займемся в данном руководстве).
Сложность для не-разработчиков. Поскольку потребности разработчиков здесь стоят во главе угла, тем, кто не очень знаком с информационными технологиями, потребуется некоторое время, чтобы привыкнуть к Друпалу. Это значит, что специалистам, разбирающимся в веб-разработке лишь поверхностно, будет сложно создавать (или даже администрировать) сайты на Друпале.

Сложный интерфейс. Интерфейс администрирования сайта в Друпале несколько сложен для понимания; в целом он не такой дружелюбный к пользователю, каким мог бы быть. (Впрочем, это скоро изменится).

Drupal против WordPress

Где бы ни обсуждали Друпал, всегда возникает непреодолимое желание сравнить его с другой ведущей открытой веб-платформой; как правило, это WordPress.
И где бы вы ни предположили, что WordPress — не полнофункциональная CMS, а всего лишь платформа для блогов — вас всегда будет ждать жаркая дискуссия. Сам я использую обе CMS, но иногда возможностей WordPress просто не хватает.

Иными словами, если вы делаете серьезный ресурс с регистрацией, аутентификацией, набором разрешений и ролей, нaпример, Интернет- мaгaзин, форум или сaйт с видео и аудио-материалами, которые добавляют сами пользователи, имеет смысл использовать более серьезную CMS, чем WordPress.

Я бы не рекомендовал вам использовать Друпал, если клиенту нужен только блог или простой сайт с портфолио, состоящий из нескольких страниц и базового содержимого: такие сайты быстрее и проще сделать на WordPress. Друпал для этого явно излишен.

Другой важный аргумент против использования Друпала — интерфейс, в котором непросто разобраться неопытным пользователям. Это веский аргумент в пользу WordPress.

Сайты, работающие на Drupal

Чтобы вас воодушевить, перечислю несколько сайтов на Друпале:

Mozilla

Mozilla

Мозилла, компания, ответственная за Firefox, использует Друпал практически во всех своих веб-проектах. Официальные сайты Мозиллы и Spread Firefox сделаны на Друпале.

Spread Firefox

Spread Firefox

Ubuntu

Ubuntu

Официальный сайт Ubuntu, популярного дистрибутива Linux, операционной системы, которая стоит на многих серверах, тоже сделан на Друпале. Обратите внимание на размер этого сайта и количество типов содержимого и функций; вскоре вы поймете, почему для Ubuntu выбрали именно Друпал.

Нужны еще примеры? Тогда посмотрите на эти замечательные Друпал-сайты.

Скачиваем и устанавливаем Drupal

В рамках данного руководства будем пользоваться последним стабильным релизом Друпала 6; скачайте его отсюда.

Скачиваем Drupal

Устанавливаем Drupal на XAMPP

Здесь мы будем устанавливать Друпал себе на компьютер, но если хотите поставить его на настоящий сервер, процесс будет аналогичен.

Чтобы установить Друпал на локальную машину, вам потребуется серверная платформа, такая как XAMPP или WAMP. Не пугайтесь, если никогда о них не слышали — использовать их очень легко.

Если у вас еще нет локального веб-сервера, установите XAMPP прямо сейчас.

Ниже приведена ссылка на простое руководство за авторством Якоба Гьюба (основателя и главного редактора Six Revisions), по которому вы очень быстро установите и настроите XAMPP (руководство написано для WordPress, так что следуйте только первой его части, шагам 1–26, держа в уме, что вы уставливаете не WordPress, а Друпал):

Using XAMPP for Local Development

Далее в данном руководстве мы предполагаем, что вы используете XAMPP, так что, если вы выбрали другой серверный пакет, вам возможно придется немного изменить процесс инсталляции.

Скопируйте файлы Drupal в директорию XAMPP

Скопируйте пакет с Друпалом, который вы скачали ранее, в директорию xampp\htdocs. Распакуйте файлы и переименуйте папку в «drupal» для простоты навигации. Теперь перейдите в папку xampp\htdocs\drupal\sites\default.

Перейдите в xampp\htdocs\drupal\sites\default

Создайте settings.php

Сделайте копию файла default.settings.php и переименуйте ее в settings.php. Убедитесь, что вы не удалили default.settings.php, в противном случае установка Друпала прервется с ошибкой; это одна из самых частых ошибок, совершаемых начинающими разработчиками на Друпал.

Не удаляйте default.settings.php!

Создаем базу данных MySQL

Друпал для хранения данных использует MySQL. Так что нам необходимо заранее настроить базу данных MySQL. Для этого воспользуемся phpMyAdmin — веб-интерфейсом для удобного администрирования баз данных MySQL (он уже входит в дистрибутив XAMPP).

Зайдите в браузере на страницу phpMyAdmin по адресу

localhost/phpmyadmin/
PHPMyAdmin

В данном примере, я назвал базу db_drupal. Вы можете предоставить суперпользователю (root) все привилегии на работу с базой db_drupal, так что он сможет читать, записывать и изменять данные в базе. Однако использовать root-аккаунт на рабочем сайте — не лучшая практика. Лучше всего создать отдельного пользователя для данной базы данных и выдать ему только необходимые привилегии. Сейчас мы так и сделаем.

Создание отдельного MySQL-пользователя для базы данных Drupal

В нашем примере я создам новый MySQL-аккаунт и назову его drupal_user. Для рабочих сайтов, однако, неплохо использовать неочевидное, случайное имя пользователя, чтобы снизить вероятность взлома при атаке перебором.

И уж точно не используйте root-аккаунт, так как большинство хакеров именно его будет «пробовать» в первую очередь. Пользователь root в MySQL обладает суперпривилегиями и имеет доступ не только к вашей базе drupal_db, но и к другим базам данных. (Кстати, неплохой вариант — вообще удалить пользователя root и не использовать его нигде. Можно создать пользователя псевдо-root, но об этом как-нибудь в другой раз).

Для создания нового пользователя MySQL перейдите на главную страницу phpMyAdmin, а затем щелкните на вкладку «Привилегии».

Теперь нажмите «Добавить нового пользователя» и заполните поля ввода необходимыми данными.

Добавляем пользователя MySQL
Добавляем пользователя MySQL

Пока вы работаете на локальной машине (то есть, Друпал установлен на вашем компьютере и работает на XAMPP), можете выбрать все доступные привилегии, но на рабочем сервере очень рекомендуется установить только те, которые действительно необходимы пользователю drupal_user.

Для нашего примера я выбрал только те привилегии, которые хочу предоставить пользователю drupal_user:

  • Select
  • Insert
  • Update
  • Delete
  • File
  • Create
  • Alter
  • Index
  • Drop
  • Create Temporary Tables
  • Lock Tables
Привилегии пользователя

На этом мы заканчиваем работу с MySQL и phpMyAdmin.

Локализация Drupal (от переводчиков)

Чтобы процесс установки совпадал с иллюстрациями в этом руководстве, необходимо устанавливать русифицированную версию Друпала. Для этого нужно скачать его перевод. Переводы Друпала и его модулей на русский язык находятся на сайте Drupaler.ru. Чтобы скачать перевод самого Друпала, зайдите на эту страницу, заполните форму как показано на рисунке и нажмите «Экспорт».

Экспорт перевода с Drupaler.ru

Затем распакуйте скачанный архив в ту же директорию, куда чуть раньше распаковывали Друпал. Переводы дополнительных модулей Друпала также находятся на Drupaler.ru. Поскольку далее по ходу руководства нам потребуются модули CCK и Views, скачайте их переводы прямо сейчас со страниц «Перевод CCK» и «Перевод Views».

Инсталлируем Drupal с помощью мастера установки

Итак, введем в адресной строке нашего браузера следующий URL:

localhost/drupal

Если вы не забыли переименовать распакованную директорию с Друпалом в «drupal», все должно сработать. Если забыли — замените «drupal» в URL-е тем названием папки, которое вы задали при распаковке файлов Друпала в htdocs.

Как только вы перейдете по URL выше, сразу увидите меню установки Друпала. Вы можете выбрать нужный язык интерфейса Друпала на первой странице. Обратите внимание, что эту опцию можно будет изменить позже из админки. Мы продолжим установку на русском, поэтому давайте выберем «Установить Друпал на русском».

На следующем экране Друпал проверит, способен ли ваш сервер (в нашем случае, локальная машина) работать с Друпалом. Если у вас на сервере не хватает нужных для Друпала приложений, будет выведено сообщение об ошибке.

Далее вы увидите экран конфигурации базы данных. Здесь вам нужно предоставить ту информацию, которую вы использовали при создании таблицы drupal_db и пользователя drupal_user.

Конфигурация базы данных

Там же, на экране настройки базы данных, щелкните на «Дополнительные настройки» и увидите опцию под названием «Префикс таблиц», которая позволяет приписать к названию всех MySQL-таблиц Друпала заданную строку (напр. blackjack_drupal_table). Я рекомендую вам задать случайный префикс, понятный только вам; эта осторожность поможет снизить угрозу атаки на базу данных с помощью SQL-инъекций.

Зададим префикс таблиц

Если все предыдущие действия были выполнены правильно, Друпал начнет установку необходимых модулей, после чего вы будете перенаправлены на страницу конфигурирования сайта.

Конфигурирование сайта

Параметры конфигурирования интуитивно понятны, так что я позволю вам ввести всю необходимую информацию самостоятельно.

Конфигурирование сайта

Настройка чистых ссылок

Одна из опций, которая может оказаться для вас незнакомой, называется «Чистые ссылки» и располагается в разделе «Настройки сервера». Ссылки, генерируемые Друпалом по умолчанию, неинтуитивны и выглядят примерно как localhost/index.php?q=21.

Когда чистые ссылки включены, URL-адреса выглядят приятнее, легче запоминаются и способствуют улучшению SEO. Например, localhost/events.

Для работы чистых ссылок требуется, чтобы на сервере был установлен mod_rewrite (модуль Apache). Скорее всего, он уже у вас установлен.

Если mod_rewrite не установлен или не запущен (что маловероятно, если у вас сервер Apache), Друпал выдаст ошибку и использование чистых ссылок будет недоступно. Это не помешает нам в создании сайта, но по описанным выше причинам следует включить чистые ссылки как можно быстрее.

Установка завершена

Если вы безошибочно следовали руководству, то увидите вот такой экран:

Установка завершена

Не переживайте, если появится ошибка функции mail(): она возникает из-за того, что мы используем XAMPP на локальной машине и попросту не настроили почтовый сервер, следовательно Друпал не сможет отправлять письма администраторам.

Когда вы будете работать с настоящим сервером, эти вещи уже будут заранее настроены (если только вы не делаете собственный веб-сервер, который еще не сконфигурирован).

Заходим в админку Drupal

Давайте перейдем в админку Друпала. Как только вы зайдете на новый сайт по адресу localhost/drupal, появится следующая страница:

Добро пожаловать в Друпал

Заходите в админку, щелкнув по ссылке «Управление».

Теперь, когда вы установили Друпал, пора обсудить концепцию модулей.

Новый комментарий

Имя:
Для редактирования комментария осталось 10 минут
Комментарии отсутствуют