Как известно, из кода Joomla постепенно исчезают устаревшие классы API. Многие из них "продержались" в ядре со времён Joomla 1.5. Отказ от них - это эволюция. Однако, удаление устаревших классов и методов будет вызывать ошибки в расширениях, которые разработчики вовремя не обновили.
Для обеспечения максимально гладкого перехода с Joomla 4 на Joomla 5 создан плагин обратной совместимости, который будет включён по умолчанию.
Это означает, что если Вы знаете, что Ваши расширения на сайте всё ещё используют устаревшие классы (например, JUri
, JFactory
, JInput
, JHtml
и т.д.), то при включённом плагине обратной совместимости этой ошибки возникать не должно. Если же Вы уверены, что расширения на Вашем сайте поддерживаются в актуальном состоянии и разработчик заявляет о совместимости с Joomla 5, то этот плагин можно выключить. Разработчикам также следует помнить не только о самих классах, но и методах в них, часть из которых также может меняться со временем.
Плагин обратной совместимости уже появился в репозитории GitHub Joomla и ожидается, что будет включён в релиз Joomla 5.0.0-alpha3.
В августе 2022 года мы на канале писали о том, что на GitHub Joomla разгорелась дискуссия об эволюции Joomla, где среди прочих участники международного сообщества затрагивали и вопрос обратной совместимости. По итогу департамент Joomla, отвечающий за выпуск релизов, принял ряд решений, был опубликован скорректированный план выпуска релизов Joomla 4 и 5. Данный плагин также является одним из результатов упомянутого обсуждения.