Вышла Joomla 6.2. Что нового?. cms.. cms. Joomla.. cms. Joomla. joomla 6.2.. cms. Joomla. joomla 6.2. oauth 2.. cms. Joomla. joomla 6.2. oauth 2. Open source.. cms. Joomla. joomla 6.2. oauth 2. Open source. PHP.. cms. Joomla. joomla 6.2. oauth 2. Open source. PHP. Веб-разработка.. cms. Joomla. joomla 6.2. oauth 2. Open source. PHP. Веб-разработка. корпоративная почта.

13 октября 2026 года вышла Joomla 6.2. Традиционно мы обозреваем часть самых заметных нововведений релиза. В этом выпуске доработали редактор материалов, добавили авторизацию почты через OAuth 2.0 и обозначение обновлений безопасности расширений. Помимо заметных изменений в админке, есть несколько полезных новинок для разработчиков и тех, кто поддерживает мультиязычные сайты.

Официальный анонс релиза на Joomla.org.

Отправка почты из CMS/фреймворка через OAuth 2.0

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

В Joomla 6.2 появился универсальный механизм SMTP-аутентификации через OAuth 2.0, рассчитанный в том числе на Microsoft 365, Google Workspace и подобные сервисы. Администратор выбирает учётную запись корпоративного SMTP для сайта, от имени которой будет отправка. Joomla получает refresh token, а затем использует его для получения access token. Подробнее в PR #48290.

Вышла Joomla 6.2. Что нового? - 1

Новые параметры находятся в общих настройках Joomla (вкладка “Сервер” -> “Параметры почты”): выбираем SMTP и способ аутентификации OAuth 2.0. Официальная инструкция с примерами настройки.

Вышла Joomla 6.2. Что нового? - 2

Пожалуй, это одна из главных фишек релиза.

Обновления безопасности расширений Joomla стали заметнее

С весны 2026 года по Joomla-сайтам (хотя и не только по ним) прокатились волны взломов, которые стали доступнее из-за возможностей искусственного интеллекта. Поэтому вебмастерам “живых” поддерживаемых сайтов важно иметь возможность получить информацию о важности того или иного обновления.

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

Уведомление о релизе безопасности расширения в админке Joomla 6.2. - добавился красный баджик с информацией об уровне закрываемой уязвимости
Уведомление о релизе безопасности расширения в админке Joomla 6.2. – добавился красный баджик с информацией об уровне закрываемой уязвимости

Теперь сервер обновлений расширения может передать признак обновления безопасности и уровень серьёзности. Joomla показывает эту информацию в разделе обновления расширений и выводит соответствующее уведомление на главной панели. Разработчикам расширений потребуется добавить сведения об уровне уязвимости в XML своего сервера обновлений (PR #48127) – тег <security>0|1|2|3|4</security>, где 0 – None, 1 – Low, 2 – Medium, 3 – High и 4 – Critical.

Ещё нюанс: учитывается максимальная серьёзность среди пропущенных обновлений. Представим, что на сайте установлена версия расширения 1.0, в 1.1 закрыли уязвимость, а в 1.2 настолько сильно покрасили кнопочку, что выпустили аж минорный релиз. Выход 1.2 не должен скрыть от владельца версии 1.0 информацию о пропущенном исправлении безопасности. Этот сценарий дополнительно проработан в PR #48190.

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

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

Функционал Joomla в штатном редакторе TinyMCE

То, что раньше реализовывали сторонние компоненты редакторов стало проникать в стандартный. Перечислим некоторые изменения.

Изображения и медиа выбираются через медиа-менеджер

У TinyMCE были собственные диалоги вставки изображения и медиа, а у Joomla – отдельная кнопка доступа к медиа-менеджеру. В Joomla 6.2 штатные кнопки изображения и медиа TinyMCE получили интеграцию с медиа-менеджером Joomla. Для выбора файла можно воспользоваться привычным инструментом CMS непосредственно из соответствующего диалога редактора. PR #48043.

Раньше такого не было. Добавили в 2026 году - хорошо.

Раньше такого не было. Добавили в 2026 году – хорошо.
Тот же функционал и для медиа-файлов

Тот же функционал и для медиа-файлов

Вставка внутренних ссылок

В диалоге вставки ссылки TinyMCE в Joomla появилась кнопка выбора, открывающая окно с доступными источниками: материалами, контактами, пунктами меню и медиа. Возможность связана с плагинами кнопок редактора editors-xtd; для сторонних расширений предусмотрена возможность подключиться к этому механизму. PR #48138.

Вот это уже интереснее. Учитывая, что огромное количество взломов Joomla-сайтов было связано со сторонним

Вот это уже интереснее. Учитывая, что огромное количество взломов Joomla-сайтов было связано со сторонним

Также добавили нативную кнопку TinyMCE для вставки разделителя “Подробнее”. PR #48236.

Вот эта иконка.

Вышла Joomla 6.2. Что нового? - 7

Однако, если у вас не чистая установка Joomla – вам может потребоваться зайти в настройки плагина TinyMCE и добавить эту иконку на панель вручную.

Вышла Joomla 6.2. Что нового? - 8

Текстовые фильтры Joomla в TinyMCE включены по умолчанию

В настройках плагина штатного редаткора теперь по умолчанию включено использование текстовых фильтров Joomla. Раньше он мог руководствоваться отдельными настройками допустимых и запрещённых элементов, из-за чего настройки CMS и результат сохранения HTML было сложнее сопоставить. PR #48041.

Для существующих сайтов ничего не поменялось, так как изменены только значения по умолчанию в форме, коде плагина и данных чистой установки. Ранее сохранённые значения параметров продолжают использоваться. Если на сайте редактор удаляет нужную разметку, проверять стоит и настройки TinyMCE, и текстовые фильтры для соответствующих групп пользователей.

Резервные языки для неполных переводов

Интересная функция – цепочка резервных языков, или language fallback. Она решает знакомую админам мультиязычных сайтов проблему: язык интерфейса выбран, но конкретное расширение ещё не имеет перевода на ваш язык или этот перевод сделан частично.

В примере на GitHub используется швейцарский немецкий de-CH и немецкий de-DE. Если у расширения отсутствуют строки для de-CH, можно настроить обращение к de-DE, прежде чем система воспользуется обычным резервным переводом (на английский язык, а если и там пусто – отображение языковой константы). Подстановка происходит для отдельных отсутствующих строк. Имеющийся перевод выбранного языка сохраняет приоритет. PR #47933.

Вышла Joomla 6.2. Что нового? - 9

Связь языков задаётся в параметрах компонента языков. Также предусмотрено указание резервного языка через элемент <fallback> в langmetadata.xml языкового пакета; настройка в параметрах компонента имеет приоритет. Если связь не настроили – новшество поведение сайта не поменяет.

Отдельные CSS-классы изображения и его обёртки

У вводного изображения материала и изображения полного текста появились отдельные поля классов для самого <img> и окружающего <figure>. Прежде поле, воспринимавшееся как класс изображения, фактически управляло классами обёртки. PR #47744.

Вышла Joomla 6.2. Что нового? - 10

Теперь можно отдельно оформить картинку и её контейнер. Например, img-thumbnail назначить изображению, а размещение и внешние отступы задать обёртке. Это, наверное, полезно там, где редактор собирается управлять оформлением материала через его параметры…

Хотя, появление этого функционала в ядре говорит скорее о том, насколько разные подходы к управлению контентом могут быть на разных проектах. Обычно контент-менеджеры не так уж хорошо знаю CSS и HTML и разработчики с них стараются снять лишние заботы, а все CSS классы остаются в макете вывода материала. Но тем не менее, если вы работаете со штатным шаблоном “Кассиопея” или его дочерним шаблоном – этот подход, возможно, пригодится.

Что появилось для разработчиков

REST API возвращает вводный и полный текст отдельно

В ответах API материалов теперь доступны introtext и fulltext. Это полезно для интеграций: внешнему приложению, экспорту или другому интерфейсу могут понадобиться и короткое вступление, и основной текст с сохранением различий между ними. PR #44566.

Ранее выдаваемое поле text, содержащее объединённый текст, в Joomla 6.2 сохранено. В исходниках оно помечено устаревшим с планом удаления в Joomla 8. Новые интеграции имеет смысл сразу строить на отдельных полях, а в существующих проверить, где используется text.

Из небольших изменений REST API также добавлена фильтрация по состоянию для конечных точек категорий. PR #46887.

Поле формы со значениями из PHP enum

В Joomla Form появился тип поля enum, который заполняет список вариантами из PHP-перечисления. У backed enum значением пункта становится значение соответствующего case, у обычного enum — его имя. Предусмотрен префикс языковых констант для подписей и дополнительные варианты, объявленные в XML. Подробнее в PR #48113.

Пример вашего enum, например в файле /administrator/components/com_content/src/Enum/StateType.php:

<?php 
namespace JoomlaComponentContentAdministratorEnum;
enum StateType: int
{
    case Published = 1;
    case Archived  = 2;
}

и как его получить в виде выпадающего списка в XML-форме Joomla:

<field name="teststatus" 
       type="enum" 
       enum="JoomlaComponentContentAdministratorEnumStateType"
       prefix="COM_CONTENT_ARTICLES_STATE_OPTION"        
       label="COM_CONTENT_ARTICLES_STATE_OPTION_STATE_TYPE_LABEL"
       default="0">
          <option value="0">COM_CONTENT_ARTICLES_STATE_OPTION_NONE</option>
</field>

В качестве отображаемого имени элемента списка может быть использована языковая константа, которая собирается следующим образом $prefix . ‘_’ . $case->name., где $prefix вы указываете в должном атрибуте поля в xml.

Если расширение уже описывает статусы или режимы работы через enum, форма может использовать тот же набор вариантов. Это сокращает дублирование между PHP-кодом и XML-списком и уменьшает вероятность забыть обновить один из них.

Javascript и CSS ядра Joomla можно собирать по отдельным ресурсам

Переработана система сборки ресурсов ядра. Исходники размещаются в media_source/, результат сборки — в media/. Ресурсы получают собственные сборщики с возможностью выполнять отдельные задачи. Можно собрать выбранный компонент или следить за изменением только его файлов. PR #46879, подробности из README.

Например, в подготовленном исходном checkout Joomla команда

npm run build -- -n com_content

собирает ресурсы com_content, а

npm run watch -- -n com_content

запускает наблюдение за их изменением.

Небольшие изменения и исправления

В Joomla 6.2 также появились изображения подкатегорий в стандартных списках и блогах категорий. Изменения затрагивают материалы, контакты и ленты новостей. Это может сэкономить собственное переопределение макета на сайте, где достаточно штатного оформления. Подробнее в PR: материалы: список, блог, контакты, ленты.

Из остальных доработок можно отметить:

  • параметры скрытия ссылок восстановления пароля и логина в стандартном модуле входа — #47946;

    Вышла Joomla 6.2. Что нового? - 11
  • исправление переключения вложенных уровней в стандартном выпадающем меню – #47909;

  • название группы рядом с найденным вариантом в Fancy Select, полезное, например, при выборе позиций модулей – #48084;

  • переработанную страницу справки в панели управления – #46355.

Отдельного пояснения заслуживает исправление категорий с отложенными публикациями. Категория могла учитываться как содержащая доступные записи, хотя все её материалы были запланированы на будущее или уже вышли за срок публикации. Теперь подсчёт учитывает эти даты, что позволяет корректнее скрывать фактически пустые категории и соответствующий заголовок подкатегорий. PR #48011.

Полный список изменений доступен в релизе Joomla 6.2.0 на GitHub.

Полезные ресурсы Joomla

Ресурсы сообщества:

Telegram:

Max

Автор: sergeytolkachyov

Источник