Что такое тема в Drupal
Тема в Drupal — это набор файлов, который определяет внешний вид сайта.
Контент типичной страницы сайта мы все представляем: это текст, изображения, ссылки на скачивание pdf-файлов, данные, которые приходят по запросу от браузера к серверу и т. д. Как этот контент будет располагаться на странице, определяют ядро Drupal и подключённые модули. Роль темы заключается в том, чтобы придать этому контенту форму, понятную для человека — удобоваримую и читабельную.
Как это работает. При запуске темы бэкенд сайта генерирует HTML-код, используя хранящиеся в теме .yml, PHP и twig-файлы, дефолтные изображения (например, кнопки), файлы конфигурации и установки. Также среди файлов темы есть CSS и JS-файлы, которые взаимодействуют с HTML. Соответственно, HTML-код назначает каждому блоку контента и элементу его место, CSS-код отвечает за их внешний вид, а JS-код оживляет интерактивные элементы. Продукт этой внутренней работы пользователь сайта и видит перед собой.
Разработчик может создать кастомную Drupal-тему под конкретный проект или запрос клиента, а может воспользоваться одной из контрибных тем, т.е. созданных и размещенных в открытом доступе кем-то из Drupal-сообщества.
Типы Drupal-тем
Темы в Drupal подразделяются на базовые и готовые, которые можно использовать из коробки.
Базовая состоит из набора шаблонов, разметки для них и небольшого кусочка CSS-кода. С базовыми темами взаимодействуют только разработчики. В ядро всегда включена такая тема (в Drupal 10 это Starterkit theme), но её можно заменить на другую базовую тему.
За привлекательный внешний вид сайта отвечает второй тип — готовые креативные темы. Каждая из них уникальна либо по предоставляемой функциональности, либо по визуалу. Разработчик может создать креативную тему на основе одной из базовых тем (т. н. наследование). Готовых бесплатных креативных тем не так много, чаще Drupal-проекты предполагают создание кастомной темы или покупку готовой к использованию темы.
Как выбрать тему для Drupal-сайта
Вот перечень критериев, по которым можно оценить надежность и безопасность темы для вашего сайта.
Тема прошла проверку системы безопасности Drupal.
Об её секьюрности говорит особая отметка на странице темы на сайте Drupal.org. Статус — это знак, что сопровождающий проекта согласен следовать процедурам Drupal Security Team. Это одно из важнейших преимуществ использования темы непосредственно с Drupal.org.
Существуют агрегаторы тем, где выбор гораздо шире, но встраивая скачанные с них файлы на свой сайт, вы действуете на свой страх и риск.
Тема имеет статусы Actively maintained и Under active development на Drupal.org.
Если тема активно поддерживается создателями, для неё на регулярной основе будут выпускаться фиксы и улучшения. Возможно будут появляться даже новые функции.
Тема адаптивная.
Она легко подстраивается к размеру экрана. Адаптивные сайты сами определяют разрешение браузера и выводят страницу соответствующих параметров.
Её разработчики следуют принципу Mobile First.
При создании темы разработчики учли тот факт, что большая часть взаимодействия с сайтами происходит с мобильных устройств и подстроили тему под них.
Совместима с Drupal 10.
На Drupal.org можно найти тему для любой версии CMS, но в этой статье мы фокусируемся на темах для Drupal 10.
Тема заточена под конкретный тип бизнеса или универсальна.
В зависимости от запроса вы можете направить поиск на тему для ecommerce-сайтов, блогов и т.д. Мы выбирали только темы, применимые к широкому кругу бизнесов.
Бесплатные темы для Drupal
Сложно найти бесплатную и качественную тему. Но Drupal славится сообществом, готовым делиться своими решениями. Мы составили список из лучших 15 тем, подходящих под перечисленные выше критерии.
Базовые темы
Drupal предлагает несколько базовых тем, которые могут стать основой для последующей кастомной доработки.
Bootstrap
Bootstrap — изящный, интуитивно понятный и мощный интерфейсный фреймворк, ориентированный на мобильные устройства. Одноименная базовая тема ликвидирует разрыв между фреймворком и Drupal. Она меняет разметку всех элементов Drupal на подходящую для этого фреймворка, подгружает все необходимые библиотеки и зависимости, добавляет нужные классы на нужные элементы.
Barrio Bootstrap
Тема на основе Bootstrap 5 полностью переопределяет базовые шаблоны из ядра. Тема не стилизована, она скорее строит макет, который служит отправной точкой для создания базовой темы.
Radix
Оригинальная тема, созданная на основе компонентов. Поставляется со встроенными Bootstrap 5, Sass, ES6, BrowserSync и BiomeJS. Версия для Drupal 10 и выше имеет в ядре тему Starterkit и Single Directory Components, поэтому больше нет необходимости использовать модуль Components.
Material Base
Базовая тема, реализующая концепцию Material Design от Google. Тема создана из набора основных стилей и компонентов, которые легко комбинировать для создания красивых Drupal-тем вместо того, чтобы строить их с нуля. Требует знания системы темизации Drupal, CSS и SASS.
Adaptive Theme
Тема предназначена для тех, кто не программирует, и тех, кто хочет написать немного CSS и получить изящную и сложную тему для современного мобильного интернета — и не только. Включает модуль AT Generator для создания неограниченного количества тем и их клонов.
Zurb Foundation
Тема предоставляет инструменты, необходимые для интеграции фреймворка Foundation с Drupal, чтобы вы могли сразу начать создавать прототипы сайтов. Тема подразумевает работу по системе Gulp для генерации CSS из SCSS-файлов.
Bulma CSS
Тема основана на одноимённом современном CSS-фреймворке, который в свою очередь базируется на системе компоновки элементов Flexbox. Хотя Bulma CSS создавалась как базовая тема, разработчики также позаботились о том, чтобы тема хорошо выглядела прямо из коробки, поэтому она может быть использована непосредственно на сайте, без подтемы.
Готовые темы
Будем честны, красивые готовые темы — не самая сильная черта Drupal. Темы, хорошо работающие прямо из коробки, чаще всего платные. И даже после покупки, вам скорее всего понадобится помощь разработчиков, чтобы корректно адаптировать её к сайту. Но мы все равно постарались отобрать лучшие из бесплатных тем.
NB. Если у вас сайт со сложной архитектурой, воспользоваться готовым дизайном не получится — нужна кастомная разработка темы.
Showcase Lite
Бесплатная мобильная тема на основе Bootstrap 3, которая поможет вам создать отличные корпоративные и сайты-каталоги товаров или услуг.
NB. Все темы, имеющие Lite в своем названии, являются демоверсиями платных тем. Они могут функционировать самостоятельно, но имеют ограниченные возможности.
Creative Responsive
Идеально подходит для всех видов сайтов малого и среднего бизнеса. Тема не зависит от какой-либо основной темы, имеет отзывчивую верстку и облегчённый код.
Civic
Атомарная дизайн-система, построенная на компонентах. Тема была создана для того, чтобы правительства и корпорации могли быстро создавать современные и инклюзивные веб-сайты.
Catalog Lite
Тема на основе Bootstrap 4 и Progressive Web App, созданная в соответствии с принципом Mobile First. Включает более 200 настроек и позволяет создавать отличные корпоративные и бизнес-сайты.
Creative & Innovative
Отзывчивая тема для мобильных устройств. Имеет адаптивный макет и широкие возможности настройки. Отлично подойдет для корпоративного сайта.
Zymphonies
Отзывчивая тема, не требующая установки дополнительных модулей. Разработана с использованием только основных модулей Drupal 8 и фреймворка Bootstrap 3. Тема пригодна для создания как небольших, так и масштабных проектов.
Dempo
Вдохновлена подтемой News WordPress-темы Katerio, но не полностью идентична ей. Не зависит от других тем и использует Bootstrap Layout Builder.
Бонус: Административные темы
Темы для админ-панели Drupal не видна посетителю. Её цель — сделать жизнь разработчика и контент-менеджера легче и приятнее.
Административная тема Adminimal основана на оригинальной теме Seven, но привносит в нее новое: современный минималистичный дизайн, адаптивный макет, улучшенные показатели юзабилити и кастомизацию.
Gin — это красивая тема для админки с совершенно новым макетом пользовательского интерфейса. Тема Gin построена на фундаменте Claro, но включает в себя функции, которые в настоящее время выходят за рамки этой темы.
Заключение
Хотя клиенты, чьи сайты построены на Drupal, чаще прибегают к разработке кастомной темы для своего сайта, для небольших проектов готовые темы очень актуальны. Благодаря системе статусов Drupal.org владелец сайта может выбрать тему, которая будет активно поддерживаться и не скомпрометирует безопасность его площадки.