Основная информация
Drupal (Дру́пал) — система управления содержимым (CMS), используемая также как каркас для веб-приложений (CMF), написанная на языке PHP и использующая в качестве хранилища данных реляционную базу данных (поддерживаются MySQL, PostgreSQL и другие). Drupal является свободным программным обеспечением, защищённым лицензией GPL, и развивается усилиями энтузиастов со всего мира.
На Drupal работает более 1 миллиона сайтов — от личных блогов до сайтов компаний, политических партий и государственных организаций. По состоянию на январь 2018 года Drupal-сообщество состоит из 1.3 миллиона человек, включая более 100 000 активных контрибьюторов. Экосистема Drupal насчитывает более 40 000 бесплатных модулей для расширения и настройки базовой функциональности, более 2500 бесплатных тем оформления, а также не менее 1200 готовых сборок, с помо которых можно быстро и легко установить Drupal с готовой специфической функциональностью.
Ядро (Drupal core) включает функции являющиеся стандартными для систем управления содержимым: регистрация пользователей и администрирование учетных записей, управление меню, RSS-потоки, таксономия, настройка макетов страницы и т. д. Установка Drupal даже без дополнительных модулей может быть использована для простых сайтов, личных и коллективных блогов, форумов или сайтов сообществ, в которых материалы создаются пользователями.
Несмотря на то, что Drupal предлагает опытным разработчикам развитый АПИ, для установки и администрирования обычных сайтов не требуются навыки программирования.
Drupal обладает востребованными функциями и поддерживает современные тренды:
Встроенный визуальный редактор (WYSIWYG), с помощью которого можно легко оформить текст, используя привычные инструменты форматирования.
Поддержка адаптивного дизайна (responsive design) на уровня ядра для обеспечения правильного отображения сайта на различных устройствах.
Улучшенная поддержка локализации интерфейса и перевода содержимого на различные языки.
Drupal можно интегрировать в систему электронного документооборота организации, подключить инструменты аналитики и маркетинга, а также использовать другие современные технологические решения.
Наиболее важные функции, предоставляемые ядром Drupal:
Управление конфигурациями на уровне файловой системы для быстрого переноса элементов конфигурации (типа материалов, представлений, полей и т. д.) из локальной среды разработки на сервер. Конфигурационные данные хранятся в файлах, отдельно от базы данных сайта, что позволяет использовать системы управления версиями для отслеживания изменений в конфигурациях.
Представления (views) обеспечивают легкую организацию и вывод содержимого сайта, включая сортировку, контекстную фильтрацию, расширенную темизацию результатов вывода и многое другое. При помощи Views можно создавать различные списки, например, статьи с группировкой по месяцам, товары в определенной категории, список самых популярных материалов.
Типы материалов, которые могут быть созданы без программирования, используя удобный конструктор в административном интерфейсе сайта. Разные типы могут иметь свой набор полей, которые, по необходимости, можно добавлять и удалять. Примеры типов материалов: «Страница», «Статья», «Запись в блог», «Музыкальный альбом», «Товар» и т. п.
Модуль Services позволяет программно создать свой собственный сервисный модуль и интегрировать его с вызовами методов (например, Representational State Transfer [REST], JavaScript Object Notation [JSON] или XML-remote procedure call [XML-RPC]). Использую модуль Service можно извлекать информацию из одного Drupal-сайта и отображать на другом, расположенном на том же локальном сервере или в другом месте. Модуль Services можно использовать и для интеграции приложений, не основанных на Drupal, ― с помощью внешнего Web-сервиса.
Технология BigPipe, обеспечивающая прогрессивный рендеринг путем разграничения вывода статических, кэшированных динамических и персонализированных частей веб-страниц.
А также:
- единая категоризации всех видов содержимого;
- вложенность категорий любой глубины;
- короткие URL;
- поиск по содержимому сайта;
- разграничение доступа пользователей к документам (модель ролей);
- динамическое построение меню;
- поддержка XML-форматов:
- сменные темы оформления сайта;
- готовые переводы интерфейса сайта на 100 языков;
- поддержка мультисайтинга с пересекающимся содержимым (например, общей базой пользователей или общими настройками);
- раздельные конфигурации сайта для различных виртуальных хостов (в том числе собственные наборы модулей и тем оформления для каждого подсайта);
- механизм для ограничения нагрузки на сайт (автоматическое отключение при высокой посещаемости части информационных блоков и модулей);
- и многое другое.
Дополнительные модули, размещённые на drupal.org, позволяют значительно расширить функциональность сайта.
Примеры модулей:
- commerce и ubercart — функциональность интернет-магазинов;
- token — сервис по использованию лексем (токенов) для других модулей;
- pathauto — автоматическое формирование URL на основе схем и токенов;
- metatag — управление метаданными сайта и отдельных страниц;
- paragraphs — конструктор лендингов и лонгридов;
- devel — отладка сайта, модулей и тем, генерация сущностей для тестирования сайта;
- webform — создание простых и сложных форм: обратная связь, опросы и т. п.;
- captcha — защита форм на сайте от ботов;
- colorbox — вывод материалов и фотографий в модальном окне;
- ds — настройка отображения материалов, представлений, форм, профилей и т. д. без редактирования шаблонов;
- mailsystem — административный интерфейс и API для управления почтовой системой сайта;
- rules — административный интерфейс и API для создания действия, автоматически выполняемых при наступлении определённых событий: отправка писем после добавления материала пользователями, перенаправление на заданный адрес после обновления материала, отображение системного сообщения после регистрации нового пользователя и т. д.;
- flag — добавление неограниченного количество гибко настраиваемых флагов для материалов, с помощью которых можно реализовать, например, функциональность «Избранное», голосование «Нравится/Не нравится» и т. п.;
- backup_migrate — резервное копирование и восстановление базы данных, кода и файлов Drupal, а также перенос сайта между серверами с поддержкой сжатие gzip, bzip и zip, а также автоматического резервного копирования по расписанию;
- xmlsitemap - создание удобной для поисковиков карты сайта;
- … и тысячи других модулей. Полный список модулей - на drupal.org.
Дюжина известных сайтов, работающие на Drupal:
- pfizer.com — одна из крупнейших в мире фармацевтических компаний.
- grammy.com — официальный сайт самой престижной музыкальной премии The GRAMMY Awards.
- tesla.com — производитель электромобилей и решений для хранения электрической энергии.
- box.com — облачное управление содержимым и совместное использование файлов для бизнеса.
- redhat.com — корпорация-разработчик Red Hat Enterprise Linux.
- australia.gov.au — сайты правительства Австралии.
- business.pinterest.com — Бизнес-раздел Pinterest.
- knowledge.autodesk.com — портал Autodesk Knowledge Network.
- sportbox.ru — новости спорта и спортивная аналитика.
- wf.mail.ru — многопользовательский онлайн-шутер.
- film.ru — портал о кино, звездах и фестивалях, расписание сеансов.
- soccer.ru — новости российского и мирового футбола.
Ресурсы на русском языке:
- drupal.ru — сайт русскоязычного сообщества Drupal
- why.drupal.ru — почему мы выбираем Drupal как платформу для разработки сайтов и сервисов
- @drupal_rus — Телеграм-чат сообщества
- @drupalru — ТамТам-канал сообщества
Обратите внимание