Друпал

Друпал
Drupal

Тип Система управления контентом/
Написана на [1]
ОС Кроссплатформенное программное обеспечение
Версия 6.12 — 13 мая 2009 г.
Лицензия GNU GPL
Сайт drupal.org

Drupal (друпал) — система управления сайтом (CMS), написанная на языке MySQL, свободным программным обеспечением, защищённым лицензией GPL, и развивается усилиями энтузиастов со всего мира.

Содержание

История проекта

Начал разработку в 2000 году бельгиец Дрис Байтаерт (Dries Buytaert), который и поныне является руководителем проекта. Название drupal является искажённым произношением голландского слова druppel (капля) и появилось в результате забавной ошибки. В 2000 году несколько студентов антверпенского университета использовали общий доменное имя для нового сайта, и в результате опечатки вместо dorp.org (от голландского dorp — деревня, вполне уместное имя для небольшого сообщества) был зарегистрирован drop.org (англ. drop — капля). Аудитория нового сайта со временем сменилась на интересующихся развитием новых веб-технологий, и новый сайт постепенно перешёл из любительского эксперимента в проект по обсуждениям идей веб-программирования. В 2001 году Дрис опубликовал исходный код drop.org под именем «Drupal». С тех пор разработка переместилась на зарегистрированный позднее сайт drupal.org, который приобрёл статус официального сайта проекта[2].

Со времени создания в процесс разработки были вовлечены сотни людей. Официальные разработчики ядра сейчас — это десятки человек, но много людей присылают свои патчи, включаемые в код системы. Также функциональность движка расширяется дополнительными модулями, которые создают сторонние разработчики. Например, в релизе 4.6 приняли участие 50 человек, приславших 338 поправок к коду, а в релизе 4.7 приняли участие уже 338 разработчиков, приславших примерно 1500 поправок. За пять лет существования проекта (к 2006 году) вышло 13 релизов, было разработано более 300 дополнительных модулей, расширяющих базовые функции CMS. По статистике обращения к обновлениям движка на март 2009 года в интернете в пределах 120 тыс. активных сайтов на Drupal 6 (без учёта сайтов находящихся за файрволлами, сайтов с отключёнными механизмом обновлений). Это также не учитывает сайтов работающих на ранних версиях Drupal.[3]

В 2007 году Дрис Байтаерт создал фирму Acquia, направленную на коммерческую поддержку проектов и сервисов, основанных на Drupal, вдохновленный успехами RedHat, построивших бизнес на поддержке открытых проектов. В 2008 Байтаерт получил учёную степень доктора философии по информатике при университете Гента, и теперь собирается полностью сконцентрироваться на развитии своего детища.

Со временем вокруг международного сайта появились национальные сообщества. Сейчас работают более 20 национальных сайтов поддержки на разных языках, [4] включая рунетовское сообщество drupal.ru основанное в 2003 году.

Эмблема проекта

Эмблема русского сообщества Drupal

После того, как Друпал был создан, очевидным вопросом стал выбор и создание эмблемы проекта. Участники сообщества считали, что она должна быть связана с каплей или водой. Первоначально эмблема Друпала изображалась как капля в круге. Со временем пришла идея сделать эмблему в виде карикатурной капли с лицом. Стивен Виттенс (Steven Wittens) создал трёхмерную каплю, но идея не пошла в массы главным образом потому, что трёхмерный объект трудно печатать, редактировать и т. д.

Текущая эмблема Друпала придумана Кристианом Дженсеном (Kristjan Jansen). Она представляет собой каплю, изображающую лицо. Глаза показываются как две соединённые капли в виде знака бесконечности и выражают в символической форме бесконечные возможности Друпала. Дополняют лицо полукруглый нос и улыбка.

Эмблема рунетовского сообщества является комбинацией эмблемы Drupal с цветами российского флага.

Награды

  • дважды — в 2007 и 2008 годах Друпал получил награду Webware 100 (присуждается лучшим на сегодня сайтам, сервисам и приложениям Сети)[5];
  • Друпал — абсолютный победитель Packt Open Source CMS и победитель в категории PHP. Основным соперником CMS была Joomla!. Победители выбирались жюри из экспертов в своей области, а также посетителями сайта Packt[6].

Технические особенности

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

Наиболее важные функции, предоставляемые модулями, входящими в поставку Drupal:

  • единая категоризация всех видов содержимого (таксономия) — от форумных сообщений до блогов и новостных статей
  • широкий набор свойств при построении рубрикаторов: плоские списки, иерархии, иерархии с общими предками, синонимы, родственные категории
  • вложенность категорий любой глубины
  • поиск по содержимому сайта, в том числе поиск по таксономии и пользователям
  • разграничение доступа пользователей к документам (ролевая модель)
  • динамическое построение меню
  • поддержка RDF/
  • BlogAPI для публикации материалов с помощью внешних приложений
  • авторизация через URL (иначе «человеко-понятные» — ЧПУ)
  • переводы интерфейса сайта на разные языки, а также поддержка ведения разноязычного контента
  • возможность создания сайтов с пересекающимся содержимым (например общей базой пользователей или общими настройками)
  • раздельные конфигурации сайта для различных виртуальных хостов (в том числе собственные наборы модулей и тем оформления для каждого подсайта)
  • механизм для ограничения нагрузки на сайт (автоматическое отключение при высокой посещаемости части информационных блоков и модулей)
  • уведомления о выходящих обновлениях модулей
  • Поддержка локализации

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

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

    В Drupal 6 планируется обновление механизма локализации, для полноценной работы с многоязычным содержимым. Также планируется адаптация к формату

    Методы структуризации содержимого

    В Drupal предлагается гибкая схема организации структуры сайта на основе таксономии. Таксономия — механизм, позволяющий создавать произвольное количество тематических категорий для содержимого сайта и ассоциировать их с модулями, обеспечивающими ввод и вывод информации. Категории могут представлять плоские или иерархические списки, либо сложные структуры, где элемент может иметь несколько «родителей» и несколько дочерних элементов. С помощью подобной схемы одними и теми же модулями возможна организация различных вариантов структуризации содержимого. Например, легко создаётся сквозной список «ключевых слов» для всех документов сайта и т. п.

    Темы оформления

    Дизайн сайта на Drupal строится на основе сменных тем оформления. Как таковой нет единственной схемы построения дизайна. Взамен Drupal даёт возможность использовать различные «движки тем», использующие шаблоны, удобные для редактирования (шаблоны XML в движках xtemplate и

    Начиная с версии 4.7 Drupal поддерживает технологию Ajax для динамической подгрузки содержимого без полного обновления страниц. В версии 5 для работы с JQuery. C версии 6.0 появилось создание форм посредством

    Примеры модулей

    Дополнительные модули, размещённые в репозитории на drupal.org, позволяют значительно расширить функциональность системы. Несколько примеров (приведены модули для версии Drupal 4.6, не всегда модули доступны для всех версий системы):

    К несомненным достоинствам Drupal следует отнести весьма полную документацию по различным аспектам системы. К сожалению, значительная её часть не имеет перевода на русский язык.

    Системные требования

    Drupal в первую очередь ориентирован на платформу

    Недостатки

    • Критики Drupal ставят в упрёк разработчикам слабое использование объектных возможностей PHP. Действительно, API Drupal практически не использует имеющихся в PHP возможностей ООП. Разработчики аргументируют это слабой реализацией ООП в языке (особенно до версии PHP 5). Объектная модель в Drupal присутствует, но в несколько нетрадиционном для PHP виде[8].
    • Ввиду активного использования базы данных Drupal может быть слишком тяжёл для ресурсов предоставляемых на дешёвых тарифных планах хостинг-провайдеров, хотя для небольших сайтов с посещаемостью в несколько сотен или тысяч посетителей в сутки этих ресурсов будет достаточно.
    • В версии 4.6 в некоторых случаях, особенно при большой посещаемости, использование встроенного механизма кэширования (основанного на использовании БД) может привести к повреждению таблиц в БД[9]
    • К недостаткам (но одновременно и к достоинствам) Drupal можно отнести достаточно высокую динамику разработки проекта. Практически в каждом релизе происходят изменения API, когда наряду с добавлением новых функций убираются некоторые старые или изменяются параметры вызова функций. Это приводит к необходимости разработчикам сторонних модулей адаптировать их для работы с новыми версиями Drupal. Однако изменения API и процедура адаптации модулей к новым версиям описываются в документации для каждого релиза, также всегда предлагается механизм автоматизированного апгрейда ядра системы на новую версию.
    • Сложная для понимания неподготовленными пользователями система классификации содержимого — таксономия.

    Примеры реализации сайтов на Drupal

    Приведены примеры нескольких сайтов с высокой посещаемостью (десятки тысяч посетителей в сутки и выше), работающие на Drupal:

    Литература[13]

    Книги на русском языке

    • Джон Вандюк, Мэтт Вестгейт «CMS Drupal: руководство по разработке системы управления сайтом», 400 стр., с ил.; ISBN 978-5-8459-1356-2, ISBN 978-1-5905-9755-2
    • Джон Вандюк (2-е издание) «CMS Drupal 6: руководство по разработке системы управления сайтом», 576 стр., с ил.; ISBN 978-5-8459-1513-9, ISBN 978-1-43-020989-8
    • Дэвид Мерсер «Drupal 6. Создание надежных и полнофункциональных веб-сайтов, блогов, форумов, порталов и сайтов-сообществ» 272 с., с ил.; ISBN 978-5-8459-1556-6, ISBN 978-1-847-19297-4
    • Bz drupal handbook (некоммерческий учебник по CMS/CMF Drupal). — проект drupal.bz, 2008. — С. 102.

    Книги на английском языке

    • Robert T. Douglass, Mike Little, Jared W. Smith «Building Online Communities with Drupal, phpBB, and WordPress». Apress, ISBN 1-59059-562-9
    • David Mercer «Drupal: Creating Blogs, Forums, Portals, and Community Websites», ISBN 1-904811-80-9
    • John K. VanDyk, Matt Westgate «Pro Drupal Development», ISBN 9781590597552
    • Matt Butcher «Learning Drupal 6 Module Development», ISBN 978-1-847194-44-2

    Примечания

    Ссылки


    Wikimedia Foundation. 2010.

    Игры ⚽ Поможем написать курсовую

    Полезное


    Смотреть что такое "Друпал" в других словарях:

    • Drupal — Drupal …   Википедия


    Поделиться ссылкой на выделенное

    Прямая ссылка:
    Нажмите правой клавишей мыши и выберите «Копировать ссылку»