Joomla 4 stable version is already out! It’s a huge upgrade to the CMS bringing so many amazing new features and functionalities. The new major version will forever change the way you have been using Joomla as the platform is now more reliable, steady, secure, and fully equipped to empower innovations.
If you’re stressing about how to upgrade your site to Joomla 4, don’t worry. In this article, we will guide you through the entire process of upgrading your Joomla 3.x site to Joomla 4 without breaking your site. You’re encouraged to follow the entire article carefully so that you don’t end up making a mess.
Let’s get started.
When Should You Update to Joomla 4
Joomla 4 is out. Does that mean you have to immediately upgrade your site to Joomla 4? No! As you can not update Joomla 3.x to 4 directly, you must first update your site to 3.10.
The Joomla 3.10 bridge will help you perform the mini migration to Joomla 4 and show a pre-update check of the extensions installed on your site. As per the official documentation, Joomla 3.10.x will be supported until 16 August 2023. So, there’s no rush. Wait till all the extensions in use are ready for Joomla 4.
How to Update From Joomla 3.x to Joomla 4
If you’ve come this far, it’s safe to say you’re ready to migrate to Joomla 4. Here’s a step-by-step guide to help you successfully upgrade your Joomla 3.x site to Joomla 4.
Here’s the visual representation of the entire update process.
The entire procedure has been broken down in detail so that you can easily follow along.
Check Technical Requirements
Before proceeding, you need to first make sure your environment meets the technical requirements of Joomla 4. Head over to the admin panel > System > System Information. In this tab, you’ll find the current PHP value, Joomla version, etc.
It is suggested to use the recommended values of Joomla 4 for a smooth transition. Here’s the requirement for Joomla 4.x.
Take a Full Backup of Your Live Site (MUST)
You must always take a backup of your site before updating Joomla. This is a must to prevent loss of data and restore your site up again if anything goes wrong during the update.
Method 1: Using Akeeba Backup
You can backup and restore your Joomla site using Akeeba Backup. To do this, you will be using the Akeeba Backup Joomla extension first to take a backup of your website (root files and database) and then Akeeba Kickstart to restore the backup. It’s a free extension and the transfer process is pretty straightforward.
Method 2: Take Manual Backup
Alternatively, you can take a manual backup of your live site. In this case, you have to first take a manual backup of all the files and folders from the website root folder so the same files and folder can be restored to another domain/host. And then, take a manual backup of the website database.
You can read the step-by-step tutorial on both methods HERE.
Set Up a Staging Site From the Backup
Now we need to create a testing site to restore the backup copy of our site. You can do it in one of the following places:
- A subdomain.
- A subdirectory.
- A local development environment using XAMPP, MAMP, or other suitable alternatives.
You can read our article on how to set up a local web environment for Joomla for an in-depth tutorial.
Update to Joomla 3.10
Please do not update your live website to Joomla 3.10 unless you intend to update for Joomla 4. This is a bridge version that has been released to make the migration to Joomla 4 easier.
From the Administration panel, go to Components > Joomla updates > Options.
Set the update channel to Joomla Next.
Click on Install the Update to update to the stable 3.10 version.
Once we have updated our staging site to Joomla 3.10, we need to check our database schema.
To do that go to Extensions > Manage > Database and check if your database table structure is up-to-date. If not, fix the issues by clicking on the Fix button.
Check System Requirements & 3rd Party Extensions Compatibility
Joomla 3.10 version comes with a pre-update check option. This shows the technical specifications of the server the site is on and core and third-party extensions that use the Update Server in a list form.
To navigate to the Pre-Update Check-screen, Click Components > Joomla Update.
If you don’t see the Pre-Update Check-screen click on the Check for Updates button or clear cache and refresh the page.
The first section shows you if the PHP and database settings meet the system requirements. We need to check if anything is red and not compatible with Joomla 4.
The next section – Extensions Pre-Update Check pulls third-party integrations and checks their compatibility. In our case, Helix Ultimate 2.0.1 is fully compatible with Joomla 4. If you’re using other extensions, please contact the developers of the extensions to know about their Joomla 4 compatibility. Know more about JoomShaper’s product update plan for Joomla 4.
Disable Incompatible Extensions
If the Joomla Pre-update checklist shows the extension is not ready for Joomla, you have to update it to the compatible version or disable it. It is strongly recommended to disable all incompatible extensions before you run the upgrade as they could break your upgrade.
To remove incompatible extensions, go to the Extension Manager → Manage tab and remove all the extensions that are not compatible with Joomla 4.
Update From 3.10 to Joomla 4
Before upgrading from one Joomla version to another, always take a full backup of the website! So go ahead and take a full backup again.
From the admin panel navigate to Global Configuration > Server > Error Reporting and set it to Maximum to get all error messages, warnings, and notices.
Now head over to Components > Joomla Update > and Click on Live Update to see Joomla 4 update notification.
You can also manually upload the Joomla 4 package in the Upload & Update tab. Click on Install the Update, you’ll be asked to provide your login credentials. The update will take some time and then you’ll be redirected to the Joomla 4 dashboard.
Congratulations! You’ve successfully updated to Joomla 4.
Post Update Checklist:
- Clear cache.
- Check the database schema and fix if any errors show.
- See if your site is performing as expected ( both frontend and backend ).
- Set the error report from maximum to default.
- Install Joomla 4 ready extensions as needed.
Move the Website From Localhost to Live
The final step is to move the Joomla site from localhost to the live server. Here’s how to do that.
- Copy the files from the root folder of the localhost to the server using FTP or File Manager
- Export the Joomla database from the localhost phpMyAdmin
- Import the Joomla database to the phpMyAdmin on the server
- Update the configuration.php to make sure you have the correct details
- Test and Go Live
Read the step-by-step tutorial HERE.
Final Thoughts
Joomla 3.10 will have a long-term support. You will get at least two years of support for 3.10, so please wait till all the extensions and third-party integrations in use are fully compatible with Joomla 4 if you’re planning to keep them.
Also, never skip a backup! Always take a backup of your live site before updating your Joomla version. Good luck!