Что нас ждёт в Drupal 10

Главные вкладки

Аватар пользователя ADCI_Solutions ADCI_Solutions 18 октября в 6:32
3

Если с 25 по 28 апреля 2022 года вас не было на DrupalCon в Портленде (Орегон, США), то вы пропустили важную новость из первых уст: в этом году выходит Drupal 10. Релиз анонсировался на июнь, август и декабрь, и по ряду причин днём X решили сделать 14 декабря.

На какой версии Drupal работает ваш сайт? Usage statistics of Drupal core говорит, что ещё остались те, кто пользуется Drupal 5, Drupal 6 и Drupal 8. В таком случае вы лишаете себя новых возможностей административной панели и поддерживаемых сообществом модулей, тем и профайлов, а ваши клиенты остаются без современного пользовательского опыта и не могут быть уверены в безопасности вашего сайта. Поддержка этих версий окончена, впереди — только миграция на Drupal 9 или разработка сайта на Drupal 10 с нуля. Читайте нашу статью дальше, чтобы понять, насколько это оправданный шаг.

Drupal 9, мы тебя не забудем

Каких-то два года назад разработчики и администраторы сайтов аплодировали выходу Drupal 9. Вот лишь несколько причин для её тёплого приёма:

  • благодаря обратной совместимости разработчики могут использовать при работе с Drupal 9 те же модули, конфигурации и данные, с которыми они работали на Drupal 8;
  • весь код, помеченный в Drupal 8 как deprecated, удалён из Drupal 9;
  • в ядро Drupal 9 включены компоненты PHP-фреймворка Symfony 4 и обработчика шаблонов Twig 2 — это более новые версии ПО, чем те, что были в Drupal 8;
  • на переход с Drupal 8.9 на Drupal 9 уходит во много раз меньше времени, чем с Drupal 7 на Drupal 8;
  • в ядро встроена экспериментальная тема управления сайтом Claro;
  • ещё несколько самых популярных модулей — в том числе для администрирования и управления контентом — включены в ядро и обновляются вместе с ним;
  • модуль Panelizer заменён на Layout Builder;
  • с новой версией Drupal стал ближе к архитектуре Headless CMS.

Срок окончания поддержки версий Drupal привязан как минимум к двум технологиям: языку PHP и фреймворку Symfony. На нашей таблице вы можете увидеть актуальные версии PHP, Symfony и Drupal, а также даты, когда они перестанут получать поддержку безопасности.

В чём главный поинт для владельцев сайтов на Drupal 7 и Drupal 9? Багфиксы Symfony 4.4 заканчиваются в конце ноября 2022 года, а поддержка безопасности — в конце ноября 2023. Следовательно, с этого момента пользоваться вашим сайтом на Drupal 7 будет небезопасно. Проектам на более свежей CMS отведён и того меньший срок: сайты на Drupal 9.3 и Drupal 9.4 превратятся в мишень для эксплойтов с декабря 2022 и июня 2023 соответственно. Однако обновление старой мажорной версии Drupal на новую не будет сложнее обновления безопасности.

Чем удивит Drupal 10

Уже известно, что работа Drupal 10 будет обеспечиваться PHP версии не ниже, чем 8.1, и Symfony 6.2, релиз которой намечен на ноябрь 2022 года. И теперь, когда вы знаете о том, чем займётесь в ближайший год-полтора до тех пор пока прежние технологии не уйдут на покой, поговорим о преимуществах грядущей версии одной из лучших CMS в мире.

Удалённый устаревший код

Со своей стороны разработчики ядра делают всё, чтобы переход с Drupal 9 на Drupal 10 прошёл настолько бесшовно, насколько возможно: помечают устаревший код, отказываются от старой функциональности, но при этом оставляют обратную совместимость — она сломается, как только старый код будет удалён. Но проблемы с переходом на новый API ждут только тех разработчиков сайтов, которые не слишком внимательно относились к коду, пока поддерживали сайт на Drupal 9. Такой подход прекрасно зарекомендовал себя при обновлении с Drupal 8 на Drupal 9.

CKEditor 5

Впервые WYSIWYG-редактор CKEditor появился в Drupal 8. Тогда это была четвёртая версия редактора, но её безопасная работа кончается в 2023 году. Интеграция CKEditor 5 была для разработчиков ядра одной из самых трудоёмких задач, что и повлияло на перенос релиза на декабрь. Зато администраторы получат инструмент, который похож на более привычные Microsoft Word и Google Docs. Contextual balloon, который всплывает при нажатии на выделенный текст и подсказку или при вставке картинки, теперь позволяет редактировать контент в реальном времени. Работа с иллюстрациями упростится — их можно будет добавлять на страницы простым перетаскиванием.

Автоматические обновления ядра и модулей

Прежде Drupal не мог обновляться из коробки — разработчики писали специальные скрипты для проверки выхода обновлений и, в целом, проводили эту процедуру согласно политике обновлений, принятой внутри команды проекта. В Drupal 10 обновления будут работать по принципу «настроить один раз и забыть навсегда». Это большой плюс для людей без опыта в программировании, управляющих маленькими проектами с небольшим количеством зависимостей.

JavaScript-компоненты

Начиная с Drupal 5, ядро CMS содержит элементы jQuery — специальной библиотеки на JavaScript, которая позволяет в одну строку решать задачи, на которые бы ушло несколько сотен строчек JS-кода. Конкретно в Drupal используется jQuery UI — набор плагинов и виджетов для создания интерактивных элементов интерфейса. Теперь об этом можно забыть: разработчики ядра посчитали, что пора кончать с зависимостью от jQuery UI с её нестабильно выходящими обновлениями безопасности и релизами, и решили заменить её на Vanilla JS. Но то, насколько хороша эта замена, покажет время.

Decoupled Menus

Внедрение Decoupled Menus преследует цель создать для фронтенд-разработчиков наиболее гибкие условия использования конфигураций меню, управляемых в Drupal.

Тема Olivero

Появившаяся в Drupal 9.1 в качестве экспериментальной темы, Olivero теперь станет дефолтной темой для оформления фронтенда. Предыдущая тема, Bartik, использовалась с 2011 года и перестала отвечать духу времени. Olivero порадует современным дизайном, затроновшим типографику, анимации и палитру цветов, поддержкой новых возможностей Drupal (second-level navigation, embedded media, layout builder, и т. д.) и соответствию стандарту WCAG AA.

Тема Claro

Ещё один шаг навстречу пользователям — на этот раз администраторам и контент-менеджерам. На замену дефолтной теме для админ-панели Seven придёт тема Claro. Она была введена Drupal 8.8 как экспериментальная, но к десятой версии получила статус стабильной и работает по умолчанию.

Starterkit theme generator

Разработчики Drupal-тем получат стабильно работающий Starterkit theme generator. Прежде каждая новая тема должна была брать за основу тему Classy и, как следствие, наследовать её CSS-классы и разметку. Из-за проблем с обратной совместимостью тема Classy не получает обновлений, начиная с Drupal 8.

Теперь же Starterkit поможет разработчикам сэкономить время в будущем. С его помощью они смогут копировать дефолтные темы в новую папку и наследовать CSS и HTML уже из них — это позволяет спокойно менять базовую тему, не боясь сломать дефолтные темы.

Впереди — только лучшее

Те, кто когда-то выбирал движок для сайта и остановился на Drupal, должно быть, сами понимают степень своего везения. Многие улучшения из тех, о которых мы рассказали в нашей статье, входят в список стратегических инициатив, в составлении которых участвует и Дрис Бёйтарт, основатель Drupal. Их выбор основан на исследованиях юзабилити, взглядах на идею и её развитие, желании здоровой конкурентной борьбы на рынке CMS и обсуждении между участниками сообщества. Такая системная работа не только делает Drupal удобнее в использовании и для разработчиков, и для администраторов без скиллов в программировании, но и выводит Drupal за рамки CMS для сайтов.

Комментарии

Аватар пользователя Babich Babich 18 октября в 13:52

Ждем выхода Drupal 10. Будем устанавливать и тестировать. Drupal 9 сейчас работает со многими популярными модулями. Будет ли так с Drupal 10 или понадобится время?

Аватар пользователя marassa marassa 18 октября в 14:54
1

Babich wrote: Ждем выхода Drupal 10. Будем устанавливать и тестировать.

Устанавливать и тестировать можно и сейчас - уже вторая бета доступна.