drupal что это такое
Drupal: полный обзор популярной CMS
CMS Drupal существует уже более 17 лет – разработка платформы началась в 2000 году программистом из Бельгии Дрисом Бёйтартом. Он является руководителем этого проекта до сих пор. Релиз движка состоялся в 2001 году на сайте drop.org. Название Drupal произошло от голландского слова drupel (переводится как «капля»).
Самая свежая версия на момент написания статьи – 8.4.4 (вышла 3 января 2018 года). В релизах принимает участие множество людей, часть из них вовлечена в сам процесс разработки, другие создают дополнительные модули и патчи.
Drupal написана на PHP и использует реляционную базу данных (MySQL, PostgreSQL и т.д.).
Преимущества Drupal
Поговорим об основных достоинствах CMS Drupal.
Открытый исходный код
Drupal распространяется как свободное программное обеспечение (под лицензией GPL). Это позволяет дорабатывать и кастомизировать платформу, а также дает возможность не зависеть напрямую от авторов движка. Существует также мнение, что проекты с открытым исходным кодом защищены даже лучше, чем с закрытым.
Бесплатность
Вытекает из предыдущего пункта. Использование программного обеспечения с открытым исходным кодом позволяет экономить средства, в то время как за использование проприетарных решений обычно приходится платить.
Гибкость
Drupal имеет удобную архитектуру, которая позволяет очень гибко настраивать сайт. Благодаря этому Drupal можно использовать в качестве платформы для сайтов любой направленности, от новостных ресурсов до сайтов с форумами и другими социальными составляющими, а также интернет-магазинов.
Drupal можно использовать не только в качестве CMS, но и как фреймворк.
Большое сообщество
Drupal, как и многие другие платформы, имеет многочисленное сообщество разработчиков, которые создают новые патчи, модули, обновления, а также документацию, руководства и многое другое.
Модули
Drupal имеет огромное количество модулей, которые значительно расширяют его функционал и позволяют добавить практически любую функцию. Drupal – платформа, ориентированная на разработчиков, а не на обычных пользователей (как часто бывает у других CMS). Поэтому разработчикам будет легче разобраться в движке и настроить нужный функционал.
Кэширование
Drupal имеет встроенную систему кэширования, которая позволяет снизить нагрузку на сервер и уменьшить время загрузки страницы.
Хуки (hooks)
Хуки позволяют модифицировать данные при обработке и совершать другие действия. Хуки привязаны не к отдельным объектам, а к процедурным точкам. В Drupal подобная модель позволяет модифицировать функционирование платформы без внесения или переписывания огромного количества кода.
Стандартизация
Разработчики пишут код в едином стиле, и это позволяет довольно быстро разобраться в уже написанных модулях.
Недостатки Drupal
А теперь стоит упомянуть недостатки движка.
Сложность в изучении
Drupal – это платформа для опытных пользователей и разработчиков. Для настройки модулей необходимо обладать навыками программирования. Так что нужно потратить некоторое время на изучение Drupal перед тем, как начать настраивать сайт.
Сложный интерфейс
Он не самый сложный, но, скажем, не такой простой и user-friendly, каким бы он мог быть.
Минимальный базовый набор
После установки Drupal содержит минимальное количество необходимых для корректной работы сайта инструментов. Поэтому это не готовое решение «поставил и запустил», а скорее каркас готового решения, который нужно дорабатывать при помощи модулей.
Модули Drupal
Модули используются для расширения функциональности движка. Сразу после установки Drupal имеет несколько модулей, но, как правило, их возможностей не хватает для реализации всех пожеланий, поэтому можно либо написать модуль самостоятельно, либо установить уже готовый.
Своей популярностью Drupal обязан в том числе огромному количеству существующих для этой платформы модулей: в списке на официальном сайте сейчас представлено 39 566 модулей. Чтобы не потеряться в таком количестве модулей, существуют фильтры по статуcу разработки, категории, версии ядра и другим параметрам.
Скачивать модули лучше всего именно с официального сайта. Также их необходимо регулярно обновлять. И не забывайте отключать неиспользуемые модули, чтобы они зря не грузили сайт.
Как установить модуль
Для установки модуля ищем его в списке на официальном сайте. Возьмем, например, страницу модуля Entity Reference Revisions.
В самом низу страницы будет Downloads, где представлены модули для разных версий Drupal. Зеленые – это рекомендованные варианты, желтые – другие релизы, красные – версии, находящиеся в разработке. Выбираем удобный формат, tar или zip, и скачиваем.
Yажимаем «Установить». Видим уведомление, что установка успешно выполнена.
Несколько интересных модулей Drupal
Сайты, использующие Drupal
Заключение
Drupal – это мощная платформа с широкими возможностями настройки. Она не подойдет абсолютным новичкам, но понравится опытным пользователям с навыками программирования. Движок отлично подойдет для сайтов со сложной организацией данных (вроде форумов, корпоративных сайтов и т.д.).
Обзор CMS Drupal 8.7.9
Drupal — это абсолютно бесплатный движок, развитием которого занимается большое сообщество пользователей с высоким уровнем технической подготовки. Платформа доступа для скачивания в виде ядра системы и тематических сборок, в состав которых входят все необходимые модули для решения конкретной задачи — например, построения интернет-магазина или информационного портала с элементами соцсети.
Главная черта Drupal — гибкость. Фактически, это своего рода конструктор сайтов, из которого вебмастер создаёт систему с нужной для себя функциональностью. Особенно это касается работы с ядром системы. «Из коробки» доступны только самые основные возможности. С помощью модулей вебмастер формирует конфигурацию, которая позволит реализовать его проект.
Drupal любят профессиональные разработчики, но и для начинающих вебмастеров он окажется полезным, если потратить время на изучение документации или установить готовую сборку и изучать CMS по ходу создания сайта.
Дизайн и работа с шаблонами
После установки Drupal на хостинг в административной панели доступны несколько дефолтных тем. Чтобы изменить дизайн, отметьте другой шаблон и нажмите «Установить по умолчанию». Можно выбирать между стандартными темами или посмотреть все бесплатные варианты в каталоге на сайте Drupal.
По умолчанию шаблоны представлены с фильтрацией по популярности. Можно отсортировать их по другим показателям или искать темы по ключевым словам. Главное не выбирать темы без адаптивного дизайна: учитывая развитие мобильного интернета и рост количества пользователей only-mobile использовать их при создании сайта неразумно.
Для установки новой темы необходимо скачать дистрибутив из каталога. Откройте раздел Appearance в административной панели и нажмите Install new theme. Загрузите скачанный архив, затем выберите добавленную тему и сохраните конфигурацию.
Темы на Drupal выглядят по-разному: есть откровенно устаревшие варианты, но и неплохих шаблонов достаточно. Однако если хочется какой-то необычный дизайн, то придётся платить за шаблон, разработанный дизайнером.
Изменить внешний вид и структуру темы можно в её настройках после установки. Для этого в административной панели доступны два инструмента:
У административной панели тоже есть своя тема, которую можно изменить — соответствующий раздел находится внизу списка установленных шаблонов. Это ещё один пример гибкости Drupal: движок можно менять под себя сколько угодно.
Функциональные возможности
Развитие систем с открытым кодом напрямую связано с количеством пользователей. У Drupal с этим нет никаких проблем: CMS переведена на 180 языков и отличается не только большим, но ещё и очень профессиональным сообществом. Высокий уровень технической подготовки пользователей — следствие гибкости и универсальности системы.
Чтобы разобраться в Drupal, придётся изучать литературу и тематические форумы. Но в процессе поддержки сайта приходит понимание, что необходимо вернуться к азам и ещё раз почитать, как работает та или иная функция. Характерная черта этой CMS — возможность решения одной проблемы разными способами.
Drupal — расширяемая система, то есть её функциональность увеличивается за счёт установки дополнительных модулей. Однако работа с расширениями здесь имеет две особенности:
У вебмастера есть выбор — скачать ядро системы и настроить её под себя с нуля или выбрать сборку под конкретный сайт. Решение зависит от профессиональных навыков и сложности проекта, который предстоит реализовать на Drupal. Есть нужен типичный интернет-магазин, проще скачать готовое решение и уделить больше внимания настройке внешнего вида, наполнению страниц контентом и продвижению сайта, а не собирать его с нуля, самостоятельно подключая модули.
Главный модуль для организации продаж называется Commerce. Он предлагает следующие возможности:
Сложность в том, что к тому же модулю Commerce нужно подключить ещё ряд расширений, чтобы получить полноценный интернет-магазин. Это запутывает вебмастеров.
После установки только ядра системы пользователь попадает в максимально недружественный для начинающего вебмастера интерфейс, в котором даже добавление новой статьи требует трёх кликов, при каждом из которых открывается новая страница. Медиа-менеджера нет, категорий нет, хотя в других бесплатных CMS всё это базовая функциональность текстового редактора.
Для создания публикаций и страниц используется визуальный редактор CKEditor. Чтобы в нём появилось больше инструментов, необходимо добавить модуль IMCE. Публикацию можно править в визуальном режиме или в редакторе HTML. За отображение контента отвечает модуль «Таксономия». Категоризация материалов осуществляется с помощью словарей и терминов. По умолчанию контент организуется через словарь Tags, в котором создаются категории публикаций. При добавлении нового материала в определённую категорию нужно прописать для него соответствующий тег. Для отслеживания эффективности ресурса доступны бесплатные модули Google Analytics и Яндекс.Метрикa.
Небольшое количество возможностей системы «из коробки» неприятно удивляет, но это осознанное решение разработчиков. Важно помнить, что это ядро гибкой системы. В него заложены только самые главные вещи, которые позволяют CMS работать. Дальше веб-мастер берёт это ядро и формирует из него собственную систему.
Вообще Drupal представляет собой, скорее, CMF — content management framework. Это каркас для взаимодействия с приложениями и управлением контентом, который позволяет формировать самые разные формы представления информации, от текстовых полей до разделов с видео. Вебмастер создаёт шаблоны страниц, изменяет количество их колонок, формирует блоки и перемещает их по экрану в конструкторе.
Ещё одна важная особенность Drupal — предустановленные возможности для создания пользовательских кабинетов, через которые они могут добавлять контент на сайт. Это позволяет создавать на основе этой системы порталы с функциональностью форумов и соцсетей.
Drupal фиксирует всех посетителей сайта, даже если они не зарегистрированы. Роли и права для них задаются в центре управления. Стандартная иерархия посетителей сайта выглядит следующим образом:
Система управления группами пользователей позволяет создать сколько угодно ролей и назначить каждой свой пакет прав доступа. Например, можно между автором и администратором поместить редактора, который проверяет материалы и выносит их на главную, но не обладает полным доступом к сайту. Система работает максимально просто: в настройках каждой роли вы галочками отмечаете права, которые нужно присвоить группе пользователей. Управлять ролями можно также через раздел List, в котором представлены все активные пользователи.
Ценовая политика
Drupal — бесплатная система управления контентом. Скачать её можно на официальном сайте проекта. Пакеты Drupal входят в состав некоторых дистрибутивов GNU/Linux, однако использовать их для установки не рекомендуется, так как они отстают от последних релизов. Старые версии перестают поддерживаться, поэтому строить на них сайты небезопасно.
На покупку модулей и тем тоже тратиться не придётся. На официальном сайте CMS в каталоге доступны более 2600 вариантов дизайна. Если ничего не подойдёт, можно найти другие варианты в магазине шаблонов TemplateMonster. С модулями ситуация обстоит так же: на сайте представлено более 41 000 расширений для CMS, которые можно скачать бесплатно.
Лучший хостинг для Drupal
У Drupal строгие требования к хостингам по выдерживаемой нагрузке. Чтобы сайт работал без сбоев, нужен производительный сервер. Это актуально даже для небольших проектов, на которых не используется большое количество модулей. Для 100%-й уверенности в том, что сайт на Drupal будет всегда доступен для посетителей, рекомендуем разместить его на хостинге Bluehost – это надежный хост-провайдер, который благодаря использованию CDN предоставляет один из самых быстрых хостингов по всему миру.
Bluehost предлагает услуги виртуального хостинга. Стоимость минимального тарифа — 2,95 долларов в месяц. На нём есть ограничение на количество сайтов (не более 1) и объём дискового пространства (50 Гб). На старших тарифах лимиты снимаются.
Цены на VPS стартуют с 18,99 долларов. Производительности представленных конфигураций достаточно, чтобы на Drupal проект с высокой посещаемостью. Для больших сайтов можно взять в аренду выделенный сервер. Цена минимальной комплектации — 79,99 долларов.
SEO-оптимизация и продвижение
«Из коробки» Drupal предлагает для SEO-оптимизации только неудобные ручные инструменты. Они работают — если правильно всё настроить, то сайт будет высоко в поиске. Но намного эффективнее автоматизировать процессы через модули. Вот список того, что необходимо добавить, чтобы поисковики не ругались на сайт, а веб-мастеру не приходилось править каждый URL руками:
Это необходимый минимум модулей. Единственная настоящая SEO-проблема Drupal — создание дублей страниц. Устранить её можно уже привычным для нас способом, то есть тоже установкой модуля. Без всех этих расширений о нормальном продвижении сайта можно даже не мечтать. Благо, модули устанавливаются бесплатно, иначе можно было бы разориться.
Плюсы и минусы
Главное достоинство Drupal — гибкость системы, которая позволяет создавать сайт любого типа. Базовая комплектация не впечатляет, но с помощью модулей вебмастер собирает CMS, которая будет решать его задачи. Если бы все эти возможности были предустановлены в Drupal, пользоваться им было бы невозможно. Среди других плюсов отметим:
Из-за открытого исходного кода создать модуль для Drupal может любой пользователь, но в официальном каталоге он появится только после проверки. Безопасность движка подтверждается тем, что его используют государственные органы стран Европы и США для создания официальных сайтов. Обнаруживать и устранять уязвимости помогают и сами пользователи, которые заинтересованы в том, чтобы бесплатный продукт становился лучше.
Изначально Drupal создавался для профессиональных разработчиков, что сказывается на его сложности. Это, пожалуй, главный недостаток. Интерфейс вроде бы воспринимается на интуитивном уровне, но всё же освоить WordPress или Joomla гораздо проще. Влияние оказывает и общественное мнение, которое настаивает на том, что Drupal — сложная система. На самом деле, для своей функциональности она проста. Секрет в том, чтобы добавлять только те модули, которые требуются для решения конкретных задач. Тогда на освоение системы, собранной под свои нужды, не уйдёт много времени.
Среди других недостатков отметим не самые лучшие шаблоны, особенно бесплатные, и высокие требования к хостингу, которые увеличивают стоимость поддержки сайта в работоспособном состоянии.
Выводы
Drupal обычно ставят в один ряд с WordPress и Joomla. Сходство налицо: открытый исходный код, расширение функциональности за счёт модулей, универсальность — можно взять любую из этих CMS и построить на ней информационный сайт, интернет-магазин или блог. Но в плане популярности и раскрученности Drupal сильно уступает конкурентам. Причина кроется в том, что ядро системы «из коробки» предлагает крайне мало возможностей. Это нравится профессиональным разработчикам, которые могут без лишних трудностей настроить CMS под себя. Начинающие веб-мастера же теряются в количестве модулей и особенностях их взаимодействия.
При работе с Drupal главное правильно оценить свои силы и сложность веб-проекта. Для решения типичных задач можно использовать официальные сборки, оптимизированные под запуск конкретных типов сайтов: блогов, интернет-магазинов, информационных порталов. Если же требуется создать специализированный проект с необычной функциональностью, то следует выбирать не сборки, а ядро CMS. На его основе можно выстроить собственную систему управления контентом. Для этого разработчик должен обладать высоким профессиональным уровнем, но главное, что Drupal предоставляет такую возможность.
Для неопытных пользователей рекомендуем обратить внимание на онлайн конструкторы, которые вообще не требуют знаний кодинга/программирования или навыков веб-дизайна. Они проще в освоении, идут в комплекте с хостингом, набором бесплатных шаблонов, доменом (поддоменом), встроенными инструментами для SEO и маркетинга. Сайтбилдеры — это идеальный вариант по соотношению цена/качество/время разработки сайта или интернет-магазина
Обзор CMS Drupal 9.1.10
Drupal (текущая актуальная версия 9.1.10) — это одна из самых мощных, функциональных и производительных CMS-систем в мире. Точнее, уже далеко не совсем CMS, как это принято считать в классическом понимании. Drupal – это скорее CMF (Content Management Framework) с открытым исходным кодом, то есть готовый фреймворк, предназначенный для разработки сложных веб-приложений и веб-интерфейсов с готовой админ-панелью. Более, того, начиная с версии 8, Друпал получил все возможности работы в качестве безголовой (Headless) или разделенной (Decoupled) CMS.
На базе Drupal можно строить всё что угодно. В том числе высоконадёжные и максимально безопасные банковские сервисы, сервисы государственных структур и т.д. Система очень гибко настраивается под любой тип проекта, ядро обновляется независимо от остального кода, поэтому обеспечивает достаточный уровень защиты и производительности в любой момент времени.
«Из коробки» имеются все самые необходимые инструменты: отчёты производительности, система управления доступом и ролями пользователей, конструктор макетов (Layout Builder, работает по аналогии с блочными конструкторами), система модерации, REST API, встроенная система тестирования функций, настраиваемые таксономии и т.д.
Перечислить все возможности Drupal практически невозможно, но ясно одно – это система корпоративного уровня, разрабатываемая профессионалами. При этом Drupal остаётся полностью бесплатным и имеет открытый исходный код. Все дополнения к нему (а их тысячи) распространяются тоже абсолютно бесплатно.
Плюсы и минусы
Начинающие и даже многие опытные вебмастера обходят Drupal стороной. Дело в том, что порог вхождения для этой CMS очень высокий. Слишком много всего нужно знать и понимать, чтобы начать работать с этой системой. Без опыта и профильных знаний скорее всего придётся нанимать профессионального разработчика, что автоматически приводит к росту расходов на проект и увеличению времени запуска. Но так ли всё плохо? На самом деле нет, иначе система не была бы так популярна в мире. Ниже – все ключевые достоинства и недостатки Drupal.
Плюсы:
Минусы:
✔ Огромное количество инструментов для разработки встроено в ядро Drupal (все возможные виды API, системы фильтрации, тестирования, сериализации и десериализации данных и т.д.).
✔ Подходит для работы в качестве Headless CMS.
✔ Высокая безопасность ядра и отдельные обновления основного кода. Все вызовы и функции автоматически тестируются.
✔ Готовые дистрибутивы (сборки) под разные типы задач (например, можно скачать готовый набор с демо-данными для открытия СМИ-портала, блога, социальной сети и т.п.).
✔ Мощные SEO-возможности из коробки, а также достаточное количество профильных дополнений.
✔ Уверенная работа с большими объёмами данных и под большими нагрузками. Есть встроенная система кэширования и совместимость с любыми серверными технологиями.
✔ Встроенные инструменты для работы с изображениями + плагины и Image API.
✔ Встроенное разделение сред на тестовую и продакшн (в пару кликов можно перенести все изменения из разрабатываемого экземпляра в боевую конфигурацию).
✔ Мультиязычность.
✔ Контроль доступа и система сложного распределения ролей пользователей. Drupal отлично подходит для командной работы.
✔ Конструктор интерфейсов (это, конечно, не Drag-and-Drop решение, но для системы такого уровня обеспечивает невероятную гибкость в работе с элементами интерфейса).
✔ Система дополнительных полей и тонкая настройка сортировки типов материалов по различным критериям.
✔ Огромное количество плагинов и достаточное предложение готовых шаблонов.
✘ Движок требователен к окружению и конфигурации сервера. Например, в последних версиях появилась рекомендация наличия Composer (имеется не на всех общих хостингах).
✘ Разработка плагинов и шаблонов не успевает за обновлениями основного движка. Поэтому для актуальной версии ядра не всегда можно найти нужные дополнения (проблема совместимости версий – одна из самых серьёзных).
✘ У движка очень сложные циклы поддержки, например, поддержка 7 версии активна до ноября 2022 года (обновления безопасности), а для 8 версии поддержка уже окончена. Текущая 9 версия будет поддерживаться до июня 2022 года, а в это время уже ведётся активная разработка 10 версии, и т.д.
✘ После установки сторонних дополнений лучше всего тестировать их работоспособность (многие плагины в каталоге имеют баги и уже давно не поддерживаются разработчиками, могут требовать адаптации исходного кода).
✘ Многие готовые тематические сборки заброшены, поэтому быстро начать в отдельных сферах/нишах не получится.
✘ Установка шаблонов и плагинов из официального каталога требует доступа к консоли Composer или ручной установки в соответствующие каталоги на сервере. Встроенного магазина тем/плагинов в Drupal нет, только установка по ссылке на архив.
Для профессиональных разработчиков, знакомых с ядром и особенностями Drupal, приведённые минусы не кажутся такими уж и серьёзными. Все они легко решаются и обходятся. А вот для новичков система кажется слишком запутанной со своими представлениями, таксономиями и правами доступа. Но никто и не говорит, что Drupal – простая и дружелюбная CMS-система. Зато для определённого перечня задач она будет просто идеальна.
Для кого предназначен
Как видно из технических особенностей движка, Drupal и не рассчитан на повсеместное применение, разработчики сознательно не снижают порог входа для новичков, чтобы оградить себя от соответствующей аудитории.
Drupal – мощный, гибкий и производительный инструмент, но только в профессиональных руках. Несмотря на все свои недостатки и сложности, он будет востребован всегда, ведь рынок корпоративной разработки никуда не денется.
Ключевая аудитория, на которую рассчитан движок Drupal:
К корпоративному сектору, с которым точно дружит Drupal, можно отнести серьёзные порталы СМИ, сайты государственных компаний (госпорталы), университетов, финтехкомпаний (подойдёт даже для крупных банков), сайты крупной розничной торговли и т.п.
Несмотря на наличие модулей для организации блогов и форумов, запускать небольшой инфосайт на Drupal – не самое логичное решение. Оно оправдано только в том случае, когда вам нужен нестандартный функционал и сложная логика формирования блоков на разных типах страниц.
Точно не нужно устанавливать эту CMS для лендингов, визиток и прочих малостраничных сайтов. Для нужд малого бизнеса логичнее использовать один из онлайн-конструкторов (будет дешевле и быстрее).
Простота использования
Хотя в комплект поставки ядра Drupal входит полноценная админ-панель, в которой можно выполнять все настройки системы без использования консоли и обращения к исходному коду, на статус дружелюбного интерфейса для новичков Друпал и не претендует.
Но зато эта админ-панель обеспечивает полный контроль над всеми функциями сайта и легко кастомизируется под нужные роли пользователей, если сайтом пользуется целая команда. Более того, вы можете автоматизировать многие бизнес-процессы и взаимодействия между сотрудниками разных групп/отделов (нужна связка модулей Workflows и Triggers).
Интерфейс Drupal сложен для новичков, но для профессионалов он удобен и позволяет быстро решать типовые задачи.
С чего начать
Для установки дистрибутива Drupal его необходимо скачать с официального сайта и распаковать в корне основной директории вашего сайта. Многие хостинги предлагают установку Drupal в один клик (например, у Bluehost такая опция точно есть).
Классическая установка через web-интерфейс имеется, и она практически ничем не отличается от установки других популярных скриптов:
В последних версиях ядра Drupal появилась новая рекомендация – наличие Composer. С его помощью можно управлять зависимостями PHP-пакетов, устанавливать шаблоны, добавлять плагины из официальных репозиториев и т.д.
Мы рекомендуем начать с демо-контента.
Если какие-то рекомендации для установки будут нарушены, система вас уведомит об этом.
Очень важный момент для новичков – если вас интересует определённая сфера применения движка, просмотрите каталог готовых сборок Drupal. Возможно, уже есть комплексные решения для вашей проблемы, и вы сможете начать не с чистого листа, а с полностью настроенной и готовой к работе конфигурации.
Редактирование сайта
В админ-панели вы можете управлять: содержимым страниц/публикаций (контентом), структурой сайта (тегами, категориями и прочими таксономиями), оформлением сайта, правами пользователей и другими настройками скрипта. Плюс, вы можете загружать и устанавливать дополнения, просматривать отчёты и журналы активности.
При правильном подходе нужно спроектировать то, как будет выглядеть макет разных типов содержимого (например, страниц с записями, страниц архива, главной страницы и т.п.), из каких блоков они будут формироваться, соотнести с каждым блоком свой тип материала и т.д.
Но для ускорения процесса имеются предустановленные типы содержимого, с ними вы сможете опубликовать свои первые материалы в пару кликов.
В разделе «Структура» можно управлять контактными формами, меню, представлениями, блоками (например, виджетами в боковых колонках), таксономиями (теги, категории материалов и т.п.), типами материалов (статьи, страницы и т.п.) и типами медиафайлов.
А в разделе «Содержимое» – создать новый материал, структура и параметры которых были определены в разделе «Структура – Типы материалов».
Что интересно, такой подход очень сложен для быстрого старта, но позволяет тонко настроить, что, где и как может публиковать пользователь с соответствующими правами, например, редактор. В структуру материала можно добавить любые дополнительные поля и сделать сложный дизайн для вывода каждого отдельного параметра.
Простой пример: страница с рецептами. Можно добавить отдельные поля для указания сложности приготовления, времени, необходимого на готовку, основные шаги рецепта, отдельное поле для ингредиентов, количество порций на выходе и т.п.
И так для каждого специфичного типа материалов. В реальности вся последующая работа редактора будет проводиться быстрее, а каждый вводимый элемент будет гибко обыгрываться в дизайне. Более того, в настройках вывода блоков вы можете настроить положение и порядок любого контента, как в онлайн-конструкторе.
Публикация сайта
Если ваши права доступа включают публикацию материалов, то любой новый материал сайта будет доступен пользователям сразу после создания.
Но если логика ролей доступа в вашей пользовательской модели сложнее, то новый материал может уходить, например, на модерацию, и будет опубликован только по решению пользователя с соответствующими правами.
Отдельно публиковать созданные страницы, как во многих онлайн-конструкторах, в Drupal не нужно.
Тем не менее, на время технического обслуживания, например, для установки плагинов или тем, а также для других задач, администратор может выключить доступ к сайту. Если вы и есть администратор – убедитесь в отсутствии отметки «Перевести сайт в режим обслуживания» в разделе настроек сайта.
Что примечательно для Drupal – в этой CMS не нужно вручную сбрасывать созданный кэш. Все обновления на сайте автоматически меняются в кэшированных страницах.
Минимальные требования к хостингу
Drupal 9 умеет работать с разными типами серверов баз данных: MySQL (5.8.3 и выше), MariaDB (10.3.7 и выше), Percona Server (5.7.8 и выше), SQLite (3.26 и выше), PostgreSQL (версия 10 и выше).
В качестве веб-сервера рекомендуется Apache 2.4.7 или Nginx 0.7 и выше.
Версия PHP для стабильной работы – не ниже 7.3, но лучше 7.4 и выше (в том числе 8.0).
Для лучшего кэширования желательно наличие OPcache и PHP APCu.
Функциональные возможности
Даже базовый комплект модулей с ядром Drupal сможет обеспечить работу большинства типовых функций для работы с сайтами любого размера и тематики. В стандартной сборке поддерживаются следующие возможности:
Если чего-то нет в базовом наборе, вы можете поискать альтернативные связки плагинов. Например, для замены нечитаемых служебных адресов можно настроить автоматические ЧПУ с помощью плагинов autopath, ctools, token и transliteration.
Что нового в версии 9.1.10
Релиз 9-й версии движка стал прямым наследником 8-й ветки (по объёму нововведений это просто очередная минорная версия 8.9.1, но циклы поддержки стали короче), которая закрепила переход Drupal на принципы ООП. Какие ещё изменения произошли в движке 9 ветки:
Плагины и интеграции
В официальном каталоге Drupal более 42 тыс. плагинов. Правда, с 9 версией движка совместимо только около 5,8 тысяч из них. По каждому их них предоставляется подробная документация по установке и настройке.
Все они полностью бесплатные и имеют открытый исходный код. Найти премиум-плагины вам вряд ли удастся, только если небольшие дополнения от частных разработчиков в обход официального каталога (на их сайтах).
Установка плагинов осуществляется:
Файлы перевода для расширений импортируются автоматически. При желании, вы можете добавить недостающие строки перевода вручную (Главная > Администрирование > Конфигурация > Регион и язык).
Любые виды интеграций можно осуществлять по API. В базовом наборе уже доступны: HAL, JSON, RESTful, сериализация.
С помощью плагинов можно изменить и дополнить любые функции Drupal. Например, сменить редактор страниц (по умолчанию поставляется CKEditor), добавить функционал интернет-магазина или поддержку AMP-страниц, расширить SEO-функционал и т.д.
SEO-возможности
Из коробки Drupal умеет всё, что нужно: вручную переписывать URL (для получения читаемых адресов, хотя процесс можно автоматизировать с помощью связки, которую мы упомянули выше), добавлять все важные мета-теги (для автоматизации процесса тоже можно найти сразу несколько плагинов), ускорять загрузку страниц с помощью кэширования и т.д.
Ряд других seo-задач решается или возможностями шаблона, или специальными плагинами: микроразметка, поддержка адаптивной верстки, AMP-версии страниц и т.д. Всё это тоже можно реализовать в Drupal.
HTTPS-версия сайта
Drupal начиная с версии 8 и выше работает с HTTPS-протоколом из коробки. Всё, что вам нужно сделать:
Ничего править или настраивать в админ-панели сайта или в его конфигах не нужно.
Дизайн сайта и шаблоны
Готовых шаблонов для Drupal 9 не так много, как для WordPress. Но и не мало в сравнении с другими популярными CMS.
Например, только в официальном каталоге размещено почти 3 тысячи шаблонов, правда, только около 300 из них совместимы с версией 9. Но это на самом деле не проблема. Шаблоны можно найти в сторонних каталогах, в том числе на таких популярных площадках, как ThemeForest или TemplateMonster.
Плюс, всегда можно заказать разработку уникальной темы или сделать всё своими руками.
Установить шаблон можно точно так же, как любое расширение – через админ-панель (с указанием ссылки на архив или с ручным выбором пакета на ПК) или через SFTP/FTP-загрузку на сервер.
Далее тему необходимо активировать и установить как решение по умолчанию.
Но основная проблема с шаблонами Drupal кроется не в их установке, а в их настройке. Точнее, в правильной настройке вывода содержимого.
Что точно понравится владельцам сайтов и разработчикам – движок автоматически выводит на страницах только те CSS-свойства JavaScript-файлы, которые участвую в построении страницы. Например, если определённой формы нет на данной странице, то её CSS/JS файлы будут отсутствовать. За это отвечает Libraries API.
Техническая поддержка
Подчерпнуть знания по CMS Drupal пользователи могут:
Плюс, на официальном сайте можно найти предложение услуг партнёров движка по сопровождению и запуску проектов на Drupal.
Порог вхождения таков, что новичкам можно либо приготовиться к долгому изучению мануалов и многочасовой практике, или к расходам на профессиональных разработчиков.
Стоимость использования
Лицензия движка Drupal исключает возможность заработка на распространении кода ядра или дополнений к нему. Основной источник заработка разработчиков – оказание услуг по настройке, запуску, дописыванию функционала и т.п.
Найти платные плагины даже на сторонних площадках очень сложно. Исключение – шаблоны. Их можно купить по таким же ценам, как и для других популярных движков – около 45-70 USD за тему. Но только на сторонних площадках.
Основная категория расходов на Drupal – услуги разработчиков и хостинг. И если цены на работы программистов, дизайнеров и SEO-специалистов всегда обсуждаются индивидуально (в зависимости от объёмов работ и сложности задач), то по ценам на хостинг сориентироваться проще.
На примере Bluehost (хостинг «номер один» в списке рекомендуемых разработчиками Drupal):
Итоговая стоимость сайта на Drupal – от 80 USD за первый год (45 USD шаблон, 12*2,95 USD хостинг).
Выводы
Drupal – это наиболее продвинутая из всех универсальных бесплатных CMS с открытым исходным кодом на рынке. Начиная с 8 версии разработчики кардинально поменяли вектор развития системы. Теперь это универсальная платформа для любых задач крупного и среднего бизнеса. На Drupal можно запускать не только сложные высоконагруженные порталы, интернет-магазины, социальные сети и другие виды проектов, но и организовывать обслуживание современных web-приложений (Drupal умеет работать как Headless CMS, все самые востребованные виды API уже входят в комплект поставки).
Сам принцип отнесения Drupal к CMS уже устарел. Это скорее CMF (фреймворк с готовой админ-панелью). Вместе с тем, движок точно не подходит для новичков и малого бизнеса, по крайней мере для задач внедрения на небольших малостраничных сайтах. В остальном это очень гибкая система, которая понравится профессиональным разработчикам и веб-агентствам.