Для показа возможностей Drupal я буду использовать последнюю на сегодняшний день версию 7.12. Для этого на локальный сервер я поставлю новую систему и проведу русификацию системы. В качестве темы выберу тему по-умолчанию Bartik 7.12.
Модуль Blog
Начнём с того, что подключим модуль Blog, который будет основой нашего сайта. Он входит в состав ядра, поэтому достаточно только зайти на страницу управления модулями admin/modules и включить его.

Сохраняем
Настройки учетной записи
Заходим на страницу настройки учетной записи admin/config/people/accounts и устанавливаем необходимые параметры.
Расскажу для каждого блока параметров в отдельности.
Анонимные посетители

Здесь можно задать как будут называться все неавторизованные пользователи. Оставляем значение по-умолчанию "Гость".
Регистрация и удаление

Нас интересует только регистрация.
Только для администраторов
Учётные записи создаются администратором. Такой способ обычно применяется на закрытых корпоративных сайтах или сайтах закрытых сообществ, где пользователей немного и список их заранее известен.
Посетители
Пользователи могут сами регистрироваться. Желательно вместе с этим параметром устанавливать "Требуется подтверждение почтового адреса". В данном случае пользователи должны будут подтвердить свою учётную запись по e-mail. Если сайт максимально открыт, то данный параметр можно игнорировать.
Регистрация разрешена, одобрение администратора требуется
Отличается от предыдущего только тем, что для подтверждения регистрации нужно одобрение администратора. Это промежуточный случай между первым и вторым.
Для нашего сайта мы устанавливаем параметры "Посетители" и "Требуется подтверждение почтового адреса".
Параметры аккаунта
Позволяет задать для пользователя изображение и подпись для его сообщений.

Настройка оповещений
Позволяет задать текст e-mail сообщений для оповещения пользователей.

Сохраняем.
Права доступа
Переходим на страницу управления правами доступа admin/people/permissions. Здесь задаются все доступные в системе для всех модулей права доступа.
Нас интересует раздел модуля Node. При установке модуля Blog добавляется новый тип материала Запись в блоге. Для него, как и для всех остальных типов материала добавляются следующие права доступа.

Отметим нужные для нас. Разрешим авторизованным пользователям добавлять записи в свой блог и редактировать их.
Также нас интересует раздел Comment.

Также отметим нужные. Разрешим неавторизованным пользователям добавлять комментарии и делать это без проверки. В случае проверки, администратор или модераторы сайта должны утвердить все добавленные комментарии. Это слишком трудоёмкая процедура, особенно если комментариев будет очень много. Проще добавить защиту сообщений (речь об этом пойдет позже) и удалять сообщения, которые не соответствуют правилам сайта.
Сохраняем.
Типы материалов
Заходим на страницу управления типами материалов admin/structure/types. Как я уже писал выше, при установке модуля Blog добавляется новый тип материала Запись в блоге. Также здесь находятся два типа материала установленных по-умолчанию.

Находим нужный и нажимаем Изменить…
Расскажу об каждом блоке настроек по отдельности.
Настройка формы
Позволяет задать название поля заголовка, а также другие параметры управления формой. Нас интересует только название поля заголовка.

Настройки публикации
Позволяет задать настройки по-умолчанию при добавлении материала.
Опубликовано
Если установлено, то новый материал будет отображаться на всех страницах. Иначе, его будет видеть только администратор на странице содержимого сайта admin/content.
По-умолчанию, установлено. Так и оставим.
Помещено на главную страницу
Если установлено, то новый материал будет отображаться на главной странице. Данный функционал работает только в случае, если главная страница задана по-умолчанию, либо отфильтровано соответствующим образом. Об этом расскажу в следующий раз.
По-умолчанию, установлено. Так и оставим.
Закреплять вверху списков
Если установлено, то новый материал будет отображаться раньше других, для которых данный параметр не действует.
По-умолчанию, не установлено. Так и оставим.
Создать новую редакцию
Если установлено, то система позволяет создать новую редакцию (версию) данного материала, т.е. можно будет получить доступ к старым версиям данного материала.
По-умолчанию, не установлено. Так и оставим.

Настройка отображения
Содержит в себе только один параметр, определяющий для материала выводить или нет поля Автор и Дату публикации. Остальные параметры вывода данных полей задаются в теме оформления.

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

Установим значения, как показано на рисунке.
Настройки меню
Позволяет задать меню, в которое будут добавлятся ссылки на содержимое данного типа материала. Это актуально при работе со страницами сайта.

Установим значения, как показано на рисунке.
Сохраняем.
Форматы ввода
Заходим на страницу управления форматами текста admin/config/content/formats. Данный функционал предназначен для фильтрации вводимых пользователями данных. Например, позволяет автоматически удалять вредоносный код.

По-умолчанию в системе предусмотрено три формата текста. Мы будем использовать все эти форматы. Рассмотрим подробнее настройки данных форматов.
Plain text
Данный формат текста предназначен для преобразования любой html-разметки в обычный текст. Назначим данный фильтр всем ролям пользователей. Делаем мы это для того, чтобы запретить неавторизованным пользователям использовать форматирование текста и добавление изображений.

Здесь мы поменяем только имя данного формата текста.
Сохраняем.
Filtered HTML
Данный формат текста предназначен для форматирования html-разметки. Позволяет определить список разрешенных тегов. Назначим данный фильтр для всех авторизованных пользователей.

Здесь мы поменяем имя данного формата текста, а также настройки фильтра Пропускать только разрешенные HTML-теги.

Установим перечень допустимых html-тегов. Указывать их нужно через пробел, обрамляя символами "<" и ">". Для нашим целей разрешим добавлять переносы строк (p), изображения (img), ссылки (a), маркированный (ul) и нумерованный (ol) списки (li), а также выделение жирным (strong) и курсивом (em).
Также установим параметр Добавить всем ссылкам атрибут «rel="nofollow"».
Сохраняем.
Full HTML
Данный формат текста предназначен для форматирования html-разметки. В отличие от предыдущего позволяет использовать все теги. Назначим данный фильтр только для администратора.

Здесь мы поменяем только имя данного формата текста.
Сохраняем.
Добавить содержимое
Добавляем содержимое на странице node/add под обычным пользователем. Далее выбираем Запись в блоге.

Вводим заголовок и текст сообщения, выберем формат текста Ограниченный HTML и сохраняем. Теперь запись доступна по адресу node/1.
Результат

HTML-код
Первая строка
Вторая форматированная строка
Третья строка
Отредактируем запись. Теперь выберем формат Простой текст и сохраним.
Результат

HTML-код
<h3>Первая строка</h3>
<em>Вторая</em> <strong>форматированная строка</strong>
Третья строка
Формат текста Простой текст заменил все специальные символы HTML на соответствующие последовательности.
Синонимы URL
Заходим на страницу управления синонимами admin/config/search/path. Данный функционал позволяет задать синоним адреса, по которому доступно содержимое сайта.

Например, у есть запись в блоке по адресу node/1. По этому адресу совсем не понятно, что материал относится к записи в блоке, а также содержит ID записи, который обычным пользователям ничего не говорит.
Заменим этот адрес на другой. Например, blog/ivanov/drupal. Данный адрес сообщает, что материал является записью в блоге, создан пользователем ivanov и его заголовок drupal.
Для этого необходимо добавить синоним.

Сохраняем. Теперь данный материал доступен по новому адресу. Всё красиво и хорошо, но данная процедура слишком трудоёмкая. Для каждого материала нужно создавать свой синоним вручную. К счастью есть способ автоматизировать этот процесс. Для этого нужно установить модуль Pathauto.
Модуль Pathauto
Для установки данного модуля можно скачать его с сайта drupal.org и выбрать его на странице установки модуля admin/modules/install либо просто указать ссылку на необходимый модуль.

После этого идём на страницу управления модулями и включаем наш модуль. Сделать это не получится, так как отсутствует необходимый модуль Token.

Поэтому следующим шагом устанавливаем модуль Token.
После этого система должна позволить включить эти оба модуля, либо только модуль Pathauto и тогда система предложит включить модуль Token.

Также нам нужна русификация этих двух модулей. Её можно скачать на сайте drupaler.ru. Русификацию лучше скачать в виде одного файла с разрешением po. Потом идём на страницу импорта перевода и русифицируем модули.

Отправляемся на страницу управления синонимами. Здесь появились вкладки. Рассмотрим их подробнее.
Шаблоны
На этой вкладке содержатся шаблоны для автоматического создания синонимов. Рассмотрим все блоки настроек по-отдельности.
Содержимое пути
Данный блок настроек представляет для нас главный интерес. Именно здесь находятся шаблоны адресов к материалам.

Первое поле содержит в себе шаблон пути по-умолчанию. Его значение будет действовать на все не заполненные поля.
Остальные поля содержат шаблоны пути для каждого типа материалов.
В качестве значения они могут содержать в себе строковые шаблоны, которые обрамляются квадратными скобками. Например, [node:title]. За строковые шаблоны отвечает модуль Token, который установили ранее. Перечень всех строковых шаблонов приведён ниже.

Нам нужны только два из них. При составлении синонима мы использовали логин автора записи в блоге и её заголовок. За это отвечают шаблоны [node:author:name] и [node:title] соответственно. Таким образом в строке шаблона адреса для записи в блоге мы должны указать следующий адрес blog/[node:author:name]/[node:title]. С остальным всё проще.
Пути термина таксономии
Блок предназначен для настройки шаблонов для синонимов адресов терминов таксономии. Позже в статье, когда будем рассматривать термины таксономии, мы вернемся к данному разделу. Для каждого блока настроек существуют свои подстановочные шаблоны.

Пути пользователя
Блок определяет настройки шаблонов для синонимов адресов к страницам пользователей.

Пути блога
Данный блок появляется при включении модуля Blog. Он содержит настройки шаблонов для синонимов адресов к страницам блога пользователей.

Сохраняем.
Настройки
Данный раздел содержит настройки синонимов адресов. Из описания этих настроек понятно их предназначение.
Массовое обновление
Позволяет установить/изменить синонимы для всех адресов определенных групп. Удобно использовать после изменения шаблонов. Таким образом не нужно изменять синонимы для каждого материала по отдельности.
Удалить синонимы
Аналогичен работе предыдущего раздела, но за исключением того, что синонимы удаляются.
Теперь если добавить новый материал в блоге, то новый синоним для него сразу добавится. Например, под пользователем ivanov создадим запись с заголовком Тестовая запись. В результате получим следующий адрес blog/ivanov/тестовая-запись. На странице списка синонимов admin/config/search/path можно увидеть все существующие синонимы.

В существующих синонимах есть одна проблема. В пути указаны символы кириллицы. Некоторые браузеры не любят этого и заменяют их на другие символы blog/ivanov/%D1%82%D0%B5%D1%81%D1%82%D0%BE%D0%B2%D0%B0%D1%8F-%D0%B7%D0%B0%D0%BF%D0%B8%D1%81%D1%8C. Согласитесь, что это не красиво. Заменим сами эти символы на их аналоги в транслите (символы латинского алфавита).
Модуль Transliteration
Данный модуль позволяет избежать указанной проблемы с символами кириллицы. Установим этот модуль и его русификацию по вышеописанной схеме. Потом нужно зайти на страницу Настройки синонимов URL и устанавить параметр Транслитерировать перед созданием синонима.

Сохраняем.
В завершение удаляем все синонимы адресов содержимого, а затем делаем массовое обновление существующих синонимов на странице admin/config/search/path/update_bulk.


Получаем список синонимов уже с адресами без символов кириллицы.

Визуальный редактор
При создании записи в блоге или другого содержимого для форматирования текста приходится прибегать к html-разметке. Далеко не каждый пользователь нашего сайта будет обладать соответствующими знаниями. Для решения этой проблемы существуют так называемые визуальные редакторы.
Для того чтобы подключить визуальный редактор к нашему сайту в арсенале Drupal cуществуют специальные модули.
Модуль WISIWYG
Данный модуль позволяет использовать на сайте несколько визуальных редакторов. Самыми популярными являются CKEditor и TinyMCE. Рассмотрим дальнейшую работу этого модуля на базе этих двух редакторов.
Cкачиваем с сайта drupal.org и установим модуль WISIWYG и его русификацию. Затем заходим на страницу настройки данного модуля admin/config/content/wysiwyg. В связи с тем, что у не установлен ни один из визуальных редакторов, система выводит инструкцию по установке поддерживаемых редакторов. Здесь же приводятся ссылки на сайты, с которых мы можем их скачать.
CKEditor
Переходим на страницу http://ckeditor.com/download и скачиваем последнюю версию редактора. Далее разархивируем его в директорию sites/all/libraries. Заходим в директорию sites/all/libraries/ckeditor и проверяем, что здесь находится файл ckeditor.js. Здесь же мы можем удалить две ненужные директории: _samples и _source. Делаем это для того, чтобы сэкономить место на хостинге. Оно лишним никогда не бывает.
TinyMCE
Переходим на страницу http://tinymce.moxiecode.com/download.php и также скачиваем последнюю версию редактора. Далее действием по выше описанной схеме. Разархивируем скаченный файл в директорию sites/all/libraries. Заходим в директорию sites/all/libraries/tinymce/jscripts/tiny_mce/и проверяем, что здесь находится файл tiny_mce.js. Поднимаемся на два уровня выше sites/all/libraries/tinymce/. Здесь мы также можем удалить ненужную директорию examples.
Возращаемся на страницу настройки модуля WISIWYG и обновляем её. Теперь она приняла рабочий вид. Проверяем, что в поле Редактор мы можем выбрать оба наших редактора. Если это так, то редакторы установлены правильно. Иначе проверяем правильность расположения установленных файлов.

Установим для формата ввода Ограниченный HTML редактор TinyMCE, а для формата Полный HTML редактор CKEditor.
Сохраняем.
Теперь нужно настроить каждый из них. Начнём c TinyMCE. Нажимаем ссылку Редактировать и проваливаемся на страницу настройки профиля TinyMCE для Ограниченный HTML. Рассмотрим каждый блок настроек по-отдельности.
Основные настройки
Позволяет установить отображение по-умолчанию, разрешить для себя пользователям изменять это значение, а также отображать ссылку на переключение режима отображения. Также здесь можно установить язык интерфейса. Выбираем Русский
Теперь нужно дополнительно русифицировать TinyMCE. Для этого скачаем пакет русификации с того же сайта, что и сам редактор. Разархивируем его и копируем файлы из директории tinymce_language_pack в sites/all/libraries/tinymce/jscripts/tiny_mce/.

Кнопки и плагины
Позволяет установить все доступные для данного редактора кнопки и плагины. Выберем кнопки в соответствии с настройками нашего фильтра текста. Напомню, что разрешены теги <p> <a> <img> <em> <strong> <ul> <ol> <li>.

Внешний вид редактора
Позволяет настроить внешний вид редактора, расположение панелей.

Очистка и вывод
Позволяет установить дополнительные фильтры. Их описание приведено тут же. Установим их всех.

CSS
Позволяет установить свой css-файл для отображения. При желании это можно сделать самостоятельно. Единственно обратим внимание на настройку Форматы блоков. Здесь можно настроить формат HTML блоков форматированного текста. Данная настройка влияет на отображение кнопки Формат HTML блока, которую мы не установили. Следует добавить, что список тегов в значении данной настройки должен соответствовать выбранному формату текста.

Сохраняем.
По аналогии настроим профиль CKEditor для Полный HTML.
Теперь если создать новую запись в блоге, то вы увидим установленный редактор. Введём какой нибудь текст. Теперь, если выделить текст, например, "строка" и нажать кнопку для выделения жирным, то увидим как текст изменился. Редактор позволяет сразу увидеть все измения при форматировании текста.

Нажмём ссылку Выключить расширенный редактор содержимого, чтобы увидеть HTML-разметку нашего текста.

Вернемся обратно и попробуем добавить изображение к нашей записи. Нажимаем кнопку Изображение.

Нужно ввести адрес пути к изображению. Получается, что пользователю нужно предоставить доступ к определенной директории на сервере, чтобы он скопировал в неё свои файлы изображений. Это не очень удобно. И с организацией доступа возникают проблемы.
Модуль IMCE
Для решения данной проблемы пользователю нужно предоставить форму для загрузки своих файлов на сервер и желательно в свою персональную директорию. Для организации данного функционала нам потребуется модуль IMCE. Cкачиваем с сайта drupal.org, установим его и русифицируем. Заходим на страницу настройки профилей IMCE.

Редактируем профиль User-1. Переименуем его в Основной. Установим для настроек Разрешенные разрешения файлов значение gif png jpg jpeg и Максимальное разрешение изображения значение 1200x1200. Это позволит пользователям загружать только файлы изображений и размера не больше чем 1200x1200.

Папки
Теперь нужно задать определенную директорию для загрузки файлов.

В инструкции описано, как правильно заполнить поле с указанием пути. Следуя согласно указаниям инструкции, установим, чтобы система для каждого пользователя в директории users создавала его персональную папку с названием соответствующим его логину. Также укажем, что пользователь может просматривать данную директорию и закачивать туда свои файлы. Создавать миниатюры, удалять файлы и изменять их размер запретим. Эти правила распространим и на подпапки.
Миниатюры
Использовать миниатюры мы запретили, поэтому удалим все значения в полях миниатюр. В дальнейшем будем использовать использовать дополнительный функционал для автоматического создания миниатюр.

Сохраняем.
Профиль Sample profile удаляем. Будем использовать для всех пользователей один профиль.
Устанавливаем профили по ролям. Для всех пользователей, кроме анонимных разрешим загружать изображения.
Сохраняем.

Модуль IMCE Mkdir
Выше упоминалась возможность работы с подпапками. Данный модуль предоставляет такую возможность. Cкачиваем с сайта drupal.org, установим и русифицируем его. Теперь изменим профиль IMCE на странице admin/config/media/imce/profile/edit/1.

Сохраняем.
Модуль IMCE Wysiwyg API bridge
Осталось подключить модуль IMCE к модулю WISIWYG. Для этого предназначен модуль IMCE Wysiwyg API bridge. Cкачиваем с сайта drupal.org, установим и русифицируем его. В завершении изменим профили WISIWYG на странице admin/config/content/wysiwyg
Нужно добавить плагин IMCE.

Сохраняем.
Попробуем теперь добавить изображение к нашей записи. В панели добавления изображения появилась дополнительная кнопка Обзор.

Нажмём её. Появляется ещё одно окно.

Здесь отображаются все закаченные на сервер файлы. Обратим внимание, что директория загрузки файлов соответствует указанной в настройке модуля IMCE. Выше размещаются ссылки для управления.
Загрузить
Попробуем закачать какой-нибудь файл изображения и добавить его к нашей записи.
Нажимаем ссылку Закачать. Появляется панель для выбора файла.

Далее выбираем нужный файл и нажимаем Загрузить.
Каталог
Если нужно создать дополнительную подпапку, то нажимаем на Каталог, вводим название и нажимаем кнопку Добавить.

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

Система закрывает текущее окно и заполняет параметрами изображения предыдущее. Изображение имеет большие размеры 1200х900, поэтому изменим их на меньшие. Для этого в соответствующих полях проставим значения 400 и 300. Нажимаем кнопку Вставить.

Сохраняем.
Продолжение следует…