Делаем блог на Drupal

Выбор CMS для блога - дело серьезное и ответственное. Полагаю, каждый блоггер, создающий standalone-блог, провел немало времени, изучая различного рода обзоры и сравнения популярных движков, а также тестируя их функционал. Такой период был и у меня.

Пожалуй, самые популярные движки сейчас - это Wordpress, Joomla и Drupal. Во всяком случае, они самые известные из бесплатных CMS. После их изучения я остановился на Drupal и очень этому рад. Не вдаваясь в подробности о преимуществах Drupal (это тема для отдельной статьи), замечу лишь, что он мне понравился следующими особенностями:

  • Гибкость системы. Архитектурно Drupal построен очень грамотно и модульно, что позволяет сделать из него все, что угодно.
  • Качественный код. Благодаря достаточно жесткому контролю качества Drupal и его модули не только стабильны, но и обладают вполне читаемым кодом.

Есть и свои недостатки, конечно, но я сейчас, собственно, не об этом. Сейчас, когда набор модулей и настроек у меня стабилизировался, я бы хотел написать о том, как сделать блог на базе Drupal.

Функционал блога Drupal предоставляет "из коробки". Но тут есть нюансы. Конкретная реализация зависит от особенностей блога и его позиционирования. Есть два варианта:

  1. Использование встроенного модуля Blog. При его включении у каждого пользователя появляется личный блог и новый тип материала "Blog Entry". Если при этом еще включить и модуль Blog API, то можно создавать записи в блоге с помощью любого внешнего клиента, поддерживающего XML-RPC. Такой подход универсален, но, на мой взгляд, избыточен для блога, который ведет один человек. Слишком уж бросается в глаза ориентированность на "мультиблоггинг". Это хорошо для многопользовательского сайта и сайтов различных сообществ, но слишком усложненно для простого блога. Поэтому я пошел по второму варианту.
  2. Использование для постинга стандартного типа материала "Story" (Статья). Здесь все куда проще. Материалы просто размещаются на главной странице, модуль Blog при этом неактивен. Мне кажется, такой способ идеально подходит для личного блога.

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

Вначале перечислю модули, которые добавляют функционал, без которого вряд ли можно представить себе современный блог:

  • Archive. Этот модуль предоставляет архив постов в календарном виде. Модуль прост в использовании и предоставляет все, что нужно. Есть еще похожий модуль - Calendar. Но последний я бы не советовал использовать, так как он создает слишком много пустых ссылок, которые не только не несут никаких материалов, но и теоретически могут стать причиной падения сайта из-за чрезмерной нагрузки от поисковых ботов.
  • Monthly Archive. Добавляет блок "Архивы по месяцам". Показаны месяцы с количеством постов.
  • Comment Notify. Этот модуль нужен для отсылки уведомлений о новых комментариях в теме всем комментировавшим в этой теме. К сожалению, в модуле есть ошибки, о которых я писал здесь (там же можно скачать исправленную версию).
  • Comment Subjects. Модуль для установки по умолчанию более внятной темы для комментариев. Устанавливает тему вида "Re: тема_поста_или_комментария". Такой вид темы более привычен, нежели то, что предлагает Drupal по умолчанию.
  • Read More Tweak. Маленький модуль для установки более привычной для пользователя ссылки "Читать далее".
  • Similar Entries. Этот модуль предоставляет весьма полезный функционал - блок с ссылками на статьи, похожие на текущую. В отличие от многих подобных модулей, релевантность предлагаемых этим модулем ссылок вполне адекватна.
  • FeedBurner. Модуль для поддержки RSS-каналов, транслируемых посредством FeedBurner. Осуществляет "на лету" редирект любых каналов на FeedBurner.
  • Taxonomy DHTML. Этот модуль, в принципе, не является обязательным для блога. Но мне он показался очень удобным и полезным. Модуль строит дерево категорий (на основе терминов таксономии и их словарей) и предоставляет блоки с ссылками на категории для каждого термина таксономии. Это не прямой аналог популярного облака тегов, а древовидное их представление. Для облака тегов можно использовать, например, Node Cloud.

Кроме того, есть модули, функционал которых, хоть и не является обязательным, но изрядно добавляет удобства блогу:

  • BUEditor. Удобный, но в то же время простой, редактор текста. Кроме того, в качестве редактора можно использовать TinyMCE WYSIWYG Editor, но мне он показался черезчур перегруженным.
  • IMCE. Модуль для удобной загрузки изображений. Полностью интегрируется с BUEditor.
  • Captcha. Модуль, предоставляющий различные методы защиты от спама в комментариях, такие как арифметические выражения и графические изображения.
  • OpenID. Модуль для поддержки авторизации по OpenID. В этом модуле я тоже нашел пару ошибок. Их описание и исправленный модуль можно найти здесь.
  • GeSHi Filter. В случае, если на блоге предполагаются статьи с примерами исходных кодов, этот модуль просто обязателен. Он осуществляет подсветку синтаксиса для очень большого количества языков программирования. При этом он не использует для подсветки JavaScript, а предоставляет полноценный фильтр для материалов.

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

Комментарии

Pingback

День Рождения блога аватар

[...] как советовал автор статьи прочитанной накануне (www.solargate.ru/delaem-blog-na-drupal) . Изрек «Блог готов!» и сижу радуюсь. Хотя еще [...]

Re: Делаем блог на Drupal

78ds аватар

>Не вдаваясь в подробности о преимуществах Drupal

Нет, уж Вы вдайтесь в подробности, какие-такие преимущества у Drupal? Для меня заявление о том, что на Drupal можно построить блог звучит примерно также, как заявление, что лучший медиаплейер это то, который работает в командной строке. Фактически Drupal это командная строка среди CMS, а Вы предлагаете как эту командную строку превратить в подобие нормального блога, вот только со всеми этими модулями всё равно Drupal не дотягивает по функциональности и юзибильности до WordPress, я уж не говорю про то, как можно нарастить функциональность WordPress с помощью плагинов, и это ещё одна слабая сторона Drupal практически нет нормальных модулей, что связано с недружелюбной политикой (постоянной сменной API) команды, создающей Drupal по отношению к внешним разработчиком. Если уж говорите о преимуществах Drupal, то это безопасность, но, лично я, не готов платить такую высокую цену за столь кастрированный продукт.

Хотя за пост спасибо, я сам вынужден работать с Drupal, себе на беду проговорился, что сайт Белого Дома сделан на Drupal, поэтому у нас в организации настояли на использование для нашего сайта этого движка. Но благодаря этому я четко определил для себя, что в дальнейшим буду делать сайты только на WordPress. Joomla! мне тоже не нравится из-за запутанности структуры, и главное модули (не помню, как они там называются, там слишком много всяких мамботов, плагинов и модулей) невозможно нормально загрузить с Windows.

Re: Делаем блог на Drupal

SolarWind аватар

А вы это все к чему? Целью этой заметки не было уговорить вас использовать именно друпал для блога. Я лишь рассказал, как это можно сделать. И лично меня результат устраивает на все 100. Если у вас с освоением друпала какие-то проблемы, используйте вордпресс, кто ж против...

Re: Делаем блог на Drupal

78ds аватар

Так я не говорю, что Вы меня не уговорили, я прошу Вас ответить на простой вопрос, в чем преимущество Drupal перед WordPress и Jomla!

Re: Делаем блог на Drupal

SolarWind аватар

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

Кроме того, мне крайне симпатичен подход друпал-сообщества к написанию официальных модулей. На официальный сайт не пропускаются модули, имеющие потенциальные дыры в безопасности или написанные не по best practices, рекомендованных для модулей друпала. В результате имеем действительно весьма безопасную и надежную систему. Причем это не просто слова, код действительно проходит ревизию. К примеру, вот этот мой модуль в свое время не прошел ценз из-за не совсем корректного использования JavaScript (я плохо знаю jQuery, и даже нет желания изучать). Мой код тогда действительно ревизировали и детально расписали мне, что следует поправить.

О Joomla! и говорить нечего. Более уродливо организованной, криво написанной, глючной, дырявой и противоречивой CMS представить себе сложно. Анархия в модулях, код, написанный на уровне школьников...

Re: Делаем блог на Drupal

Anton Titov [xom94ok] аватар

Спасибо за обзор модулей =) Недавно начал разбираться в Drupal. Как раз приступил к созданию своей домашней странички. Пока планирую все сделать исключительно силами модулей Drupal (хотя сам на данный момент уже написал 1 модуль маленький для клиентского сайта).
Одно только замечание: OpenID по приведенной ссылке только для 5х . Посмотрю завтра (точнее днем) другие модули, думаю что что-то есть...
По поводу JQuery - зря вы! Это реально вещь! Причем настолько простая и компактная - очень советую почитать их книгу, не займет больше недели (с напрягом можно и за 3 дня).
По поводу Joomla - согласен!
По поводу холиваров - всему свое время. Я имею ввиду, что и сам в свое время говорил: php - говно, perl - рулит. Java - говно, с++ - рулит, но теперь я эти глупости перерос. Есть такой момент: криворукость. Криворукость - вообще вещь уникальная, интернациональная и кросплатформенная. Присутствует в коде на любом языке и самое главное, через криворукость мы все прошли! Так что забудьте вы эти сопли про говно/неговно, главное программисты, а пусть пишут хоть гвоздиком по стеклу для денди (клиент разницы не заметит).
А теперь вот прочел тут пару тезисов: Джанго - рулит (я не сомневаюсь) и Drupal - не дружелюбный, бла бла. Во первых Джанго насколько я знаю - Framework. А Drupal - cms, хоть и очень интересная, со своими мощными API, что в принципе уже считаю львиный кусок любого Framework'a. Но все равно сравнение не корректное. Все равно что сравнивать самолет с пылесосом. По поводу что говно, а что нет, что быстро работает, а что нет: вы определитесь вот с этим:
- бюджет
- команда (соответственно человеко-часы)
- цель (задача)
а потом выберите под данные критерии оптимальный вариант. Drupal подходит под сайты средней и мелкой загруженности, как cms из которой можно сделать любой сайт (чаще всего почему-то встречаю магазины) силами 1го! человека в короткие сроки. Если вы собрались писать yandex - ОКе, никто не спорит, что Drupal не под такие задачи. А еще я может быть удивлю кого-нибудь, но это не движок для Flash-сайтов и интернет-игр.

Re: Делаем блог на Drupal

Anton Titov [xom94ok] аватар

Извиняюсь сильно по поводу OpenID: в cms 6x+ OpenID вшит в ядро!

Re: Делаем блог на Drupal

SolarWind аватар

Не могу не согласиться, полностью поддерживаю ваше мнение. :-)

А насчет jQuery... Штука наверняка правильная, отрицательных отзывов о ней я даже не слышал. Просто я не веб-программист, и без крайней на то надобности как-то лезть в это не хочу. Просто вопрос личных пристрастий. ;-)

Re: Делаем блог на Drupal

Anton Titov [xom94ok] аватар

http://loginza.ru/
Можете добавить в список вот этот плагин. Очень удобное дополнение к OpenID

Re: Делаем блог на Drupal

Гость аватар

А 7й друпал кто-нибудь пробовал использовать под блог или все пока на 6 ?

Re: Делаем блог на Drupal

SolarWind аватар

Да можно и на семерке вполне, все эти модули есть и под нее. Я пока остался на 6, но это просто потому, что мне лениво переписывать мой модуль голосований под семерку. ;-)

Увлекательное сообщение :)

claigiccabs аватар

Отличное сообщение ))))

Увлекательное сообщение :)

claigiccabs аватар

Отличное сообщение ))))

Re: Делаем блог на Drupal

погружение шпунтового ограждения аватар

Если взять Барака Обаму и уложить на лопатки по химии, то можно тоже вычеркнуть его из списка, как и Вассермана. Так что же из них прав в теме о глобальном потеплении, если их обоих можно уложить на лопатки по химии?

Нужен ответ на вопрос

Lalahon аватар

и сюда запостил.

An interesting theme for us

Risehon аватар

Hello...

Изготовление и продажа документации

VladBesEkat аватар

Анекдот про студентов и дипломников из Челябы.
Расписание поездов в период летних отпусков - https://rasp.yandex.ru/ :
"Словами "вот такие пироги" заканчивают свою защиту диплома бакалавры-кондитеры."
Купить диплом, аттестат или удостоверение в Челябинске http://diplom.club/dp74

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу. Если у вас есть аккаунт в Gravatar, он будет использован для показа вашей аватарки.
  • Доступны HTML теги: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Строки и параграфы переносятся автоматически.