Вышла Joomla 6.0.0

14 октября 2025 года вышла Joomla 6.0.0. При подготовке к Joomla 4 был изменён релизный цикл на 2-хлетний, где каждая мажорная версия имеет 2 года активной разработки и 2 года - в режиме поддержки и закрытия уязвимостей. С выходом Joomla 6 "четверка" завершает свой путь, а Joomla 5 переходит в режим тех.поддержки. Мажорный релиз не означает больше коренной слом обратной совместимости, но является своеобразным слепком, фиксацией изменений в момент времени (ссылка 1ссылка 2).

Переход с Joomla 5 на Joomla 6 - это обновление, а не миграция.

Совет по Joomla: несколько значений по умолчанию в XML-формах для стандартных полей типа list

При работе над плагином возникла необходимость указать стандартный набор из нескольких элементов стандартного поля списка. И хотелось указать их в стандартном же атрибуте default для полей.

Совет по Joomla: значение переменной по умолчанию с помощью класса Joomla\Registry\Registry.

Очень часто в Joomla мы видим, что данные приходят не в виде массива или простого объекта (stdClass), а их нужно получать с помощью метода get(). Например, в плагине или модуле:

$option = $this->params->get('my_option');

Это означает, что мы получили данные в виде объекта Joomla\Registry\Registry. Раньше (в Joomla 2.5, Joomla 3 и ранее) он назывался JRegistry.

Как триггерить события для плагинов на манер Joomla 5+?

Плагины в Joomla - тип расширения, который срабатывает в определённые моменты жизненного цикла Приложения Joomla. Причем Joomla уже довольно давно может не только отдавать HTML-страницу, но и работать в командной строке (CLI), отдавать JSON в REST API, выполнять задания по расписанию и т.д. Все эти сценарии работы имеют свои "контрольные точки" событий, в которые могут вызываться плагины и совершать некие действия с данными. Или не совершать, а выполнять какие-то собственные действия просто в нужный момент.

Логирование действий пользователя в Joomla. Создание плагина Actionlog

На вашем сайте, внутреннем портале, в интернет-магазине кто-то что-то сделал, а потом всё сломалось: сайт открывается криво (или не открывается вообще?), перестали работать фоновые задачи в планировщике, установились неправильные скидки всем пользователям на все товары... Предположим, что с безопасностью у вас всё хорошо: Joomla свежая, актуальная, расширения - тоже. Да и в логах сервера и логах Joomla тоже чисто... Тогда остаётся ещё один источник информации - Лог действий пользователей Joomla. Основная его задача - помочь быстро найти кому настучать по рогам причину и устранить её. 

Статья изначально опубликована на Хабре и на сайте автора

Создание материалов Joomla с пользовательскими полями по REST API (webservice)

Может я где проглядел, но те немногие источники, с которыми я бегло знаком, в основном рассказывают о том как в принципе создать материал в Joomla 4 / Joomla 5 с помощью REST API. А про пользовательские поля ничего не сказано: как в Joomla REST API к материалу добавить ещё и пользовательские поля?

Совет по Joomla: рендер пользовательского поля внутри другого пользовательского поля

Иногда дизайнеры рисуют непростые макеты. Внешне в них выглядит всё просто и красиво. Но ты смотришь на них и думаешь: "А с помощью чего я буду реализовывать это?".

Плагин: Быстрый заказ для JoomShopping

Плагин «Быстрый заказ» позволяет клиентам оформлять покупки в 1 клик без добавления товара в корзину. Пользователь указывает имя, фамилию, телефон, email и атрибуты товара (при наличии). Система автоматически создает заказ в JoomShopping с контактами клиента и выбранными атрибутами, указывая доставку/оплату по-умолчанию из настроек плагина.

Совет по Joomla: программный рендер модулей

Модули порой удобно использовать в местах, которые в Joomla не всегда предназначены для этого 😀. Например, в переопределениях макета. Из материала делаем посадочную страницу: часть инфы находится в самом материале, часть - в полях, а часть удобно вывести модулем. При этом модуль этот должен находиться между телом материала и данными из пользовательских полей.

Управление очередностью плагинов в Joomla 5 с помощью приоритетов обработки событий

В Joomla 5 плагины подписываются на события с помощью интерфейса Joomla\Event\SubscriberInterface в нём всего один метод — getSubscribedEvents(), который должен вернуть массив соответствий событий, которые будет прослушивать этот плагин и их обработчиков.

Joomla!® CMS — пожалуй, лучшая система управления контентом с открытым исходным кодом

Логотип Joomla

Joomla! — это больше, чем просто программное обеспечение, это люди, включающие разработчиков, дизайнеров, системных администраторов, переводчиков, копирайтеров, и, что самое главное — простых пользователей.

Мы рады пригласить вас в ряды нашего сообщества!

Свернуть

Новости портала

Новое в блогах

Видео

Форум о Joomla