История взлёта и падения новостного сайта от 10 тысяч до 1 млн уников в сутки и обратно и при чём тут Joomla!

Привет вам, уважаемые читатели!

Да-да, в заголовке нет ошибки. Действительно был (и есть) такой сайт региональных новостей, траффик (и конечно заработок) которого удалось поднять до небес. Вы только представьте себе, как больно было оттуда падать!

Эту поучительную историю меня просили озвучить уже несколько раз знакомые и не очень единомышленники из Joomla-сообщества, которые были её свидетелями.

Joomla .htaccess: правила для включения сжатия Brotli и правила кэширования

В чате Joomla коллеги поделились полезными правилами для .htaccess, которые позволяют включить серверное сжатие brotli для трафика, а так же настроить кэширование. 

Вышла 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!® CMS — пожалуй, лучшая система управления контентом с открытым исходным кодом

Логотип Joomla

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

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

Свернуть

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

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

Видео