I decided to install Joomla 5.0.

Joomla! Downloads - Download Joomla! 5.0.0

  • backing up the site and the database:
    see Site Backup
  • Verification of all extensions and plugins: compatibility with the v5.x
  • disable non-compatible plugins/extensions, e.g.:

We can help each other myqsl and directly disable extensions

  1. UPDATE `jom50_extensions` SET `enabled` = '0' WHERE `jom50_extensions`.`name` LIKE '%jcomments%';
  2. UPDATE `jom50_extensions` SET `enabled` = '0' WHERE `jom50_extensions`.`name` LIKE '%attach%';
  3. UPDATE `jom50_extensions` SET `enabled` = '0' WHERE `jom50_extensions`.`name` LIKE '%iyosis%';
  4. ...
  5. UPDATE `jom50_extensions` SET `enabled` = '0' WHERE `jom50_extensions`.`name` LIKE '%kunena%';
  6. UPDATE `jom50_extensions` SET `enabled` = '0' WHERE `jom50_extensions`.`name` LIKE '%cloud%';
  7. UPDATE `jom50_extensions` SET `enabled` = '0' WHERE `jom50_extensions`.`name` LIKE '%JEV%';

  • copying the old directory to a new directory, and duplicating the database.

at OVH I have several databases. I saved the database, renamed the tables with a prefix jom50_ and recreated the database jooma_5.

  • Updating extensions
  • it is necessary to add aliases for all Joomla classes in third-party plugins and components

cf Renommage des classes Jxxx (à partir de J3.8)

JAccessRules Joomla\CMS\Access\Rules use Joomla\CMS\Access\Rules as JAccessRules;
JApplicationHelper Joomla\CMS\Application\ApplicationHelper use Joomla\CMS\Application\ApplicationHelper as JApplicationHelper;

example on a php file:

  1. use Joomla\CMS\MVC\Controller\AdminController as JControllerAdmin;
  2. use Joomla\CMS\MVC\Controller\BaseController as JControllerLegacy;
  3. use Joomla\CMS\Factory as JFactory

On this occasion I updated the Xmap component with the joomla 5.0 APIs  JLTRY/Xmap/releases/tag/V4.0