Drupal

Drupal

Рубрики :Мини Вики

   Drupal (Друпал)  — основа управления содержимым (CMF), написанная на языке PHP и использующая в качестве хранилища данных реляционную базу данных (поддерживаются MySQL, PostgreSQL и другие). Drupal является свободным программным обеспечением, защищённым лицензией GPL, и развивается усилиями энтузиастов со всего мира.

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

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

вложенность категорий любой глубины

поиск по содержимому сайта, в том числе поиск по таксономии и пользователям

разграничение доступа пользователей к материалам (ролевая модель)

динамическое построение меню

поддержка XML-форматов:

вывод документов в RDF/RSS

агрегация материалов с других сайтов

BlogAPI для публикации материалов с помощью внешних приложенийавторизация через OpenID

символьные осмысленные URL (иначе «человеко-понятные» — ЧПУ)

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

   Механизмы расширения функциональности

  Drupal имеет модульную архитектуру с компактным ядром, предоставляющим API, к которому могут обращаться модули.

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

Модули

   Несколько примеров наиболее популярных модулей, которые можно скачать в репозитории на drupal.org:

   Views — модуль с интерфейсом для создания различных списков

  Panels — предоставляет возможность разбивать содержимое страницы на регионы (более продвинутое использование стандартных регионов Drupal)

   Services — создание собственных веб-сервисов, например XMLRPC или REST

 WYSIWYG — модуль для работы с wysiwyg редакторами, позволяет одновременно использовать несколько редакторов (ckeditor, tinymce, whyzziwyg)

  Apachesolr — интеграция с поисковиком Apache SOLR

   Panels everywhere — предоставляет возможность использовать главную панель для всего сайта, с последующей вставкой в неё других панелей

   Features — позволяет сливать определенные данные из базы в код в виде модулей для последующего переноса (например с сервера разработки на препродакшен сервер)

  Backup and migrate (BAM) — возможность дампа и восстановления базы полностью или частично

Views bulk operations — групповые операции над объектами в списках

Devel — набор средств и функций для быстрой разработки

Drush — Drupal shell, пакет для работы с друпалом и модулями через консоль (также доступен в репозитории последних версий ubuntu)

Memcache — интеграция с сервером memcached

Ubercart — система электронной коммерции

  К несомненным достоинствам Drupal следует отнести весьма полную документацию по различным аспектам системы (документация преимущественно на английском языке).

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

  Дизайн сайта на Drupal можно менять с помощью тем оформлений. В качестве шаблонизатора («движок темы» в терминологии Drupal) используется PHPTemplate, однако есть возможность использовать Xtemplate, Smarty, Twig и другие.

  Начиная с версии 4.7 Drupal поддерживает технологию Ajax для динамической подгрузки содержимого без полного обновления страниц.

    В версии 5 для работы с JavaScript добавлена библиотека JQuery. C версии 6.0 появилась возможность динамически изменять формы посредством AHAH. В версию 7.0 вошла библиотека jQuery UI.