Introduction
I upgraded my Joomla 3.10.3 site to Joomla 4.0.4. It should be an easy upgrade but in reality, the upgrade was a little hassle.
Joomla 3.10.3 will be end of support on August, 27th, 2023. See Joomla 3.10: End of Support Handling for more information. Now, there is no urgent need to upgrade but that will change when the end of support date comes closer.
In this blog, I will describe all the steps that I took to test the upgrade. I can tell you that the upgrade has been completed successfully on my life environment. This is the first article that I write on Joomla 4.0.4.
Preparation
I am running HyperV on my Windows 11 laptop. So, I created a Linux CentOS 8 server and I installed Apache, MySQL and PHP 7. A snapshot was made after each step. When the CentOS 8 server was running fine I made a backup from my Joomla 3.10.3 site with Akeeba. I restored the Akeeba backup on my CentOS 8 server, followed by a snapshot. My 'play environment' was born.
The domain name is demo-omgeving.eu. As that domain is not registered it can only be accessed from my Windows 11 laptop as I changed the local hosts file. And very safe because it does not affect the life environment. And it is not crawled by search engines.
Before upgrade steps on Joomla 3.10.3
During various tests I found out that I had some extensions installed that are not compatible with Joomla 4:
- Attachments
- Comments
- Editor - Switcher
- SeoBoss
So, I moved away from Editor - Switcher to switch editor 2 as it is Joomla 4 compliant. To make the migration easier I installed this extension before the actual migration. The Comments extension was replaced by Akeeba Engage. The previous comments extension was no longer updated. And SeoBoss was also no longer maintained and the domain name refers to a Korean site. Not that promising.
The T4 Plugin is Joomla 4 compliant, but not in my case. It screwed up the Joomla 4.0.4 site.
Preparations on Joomla 3.10.3
All these steps are performed on the local development environment, running on HyperV with CentOS 8 and with the domain name www.demo-omgeving.eu.
The most important thing: on the test environment check if the site is working fine. If there are any issues solve them first and make a new snapshot. |
After login click on [View Updates] to see all the available updates. |
Install all the applicable updates. |
If needed, go to System -> Global Configuration and click on Joomla! Update in the list. Change the Update Channel to Joomla Next. Click [Save and Close] when done. |
Alternatively, click on [Update Now] if the update channel has already been set to Joomla Next. |
Click on [Live Update] to see the blocking issues. |
You might get an Update Server error. That is a known issue and more information can be found in this GitHub article. |
All the blocking items. But... be careful here. Not all the blocked items are actual blocking. For example, System - Slideshow CK is shown as blocking but in reality, it is not blocking and working fine on Joomla 4. The same for switch editor 2. But SeoBoss Renderer is really blocking. You only find out during excessive testing. |
Uninstall the very old Editor - Switcher. As told earlier, this extension does not work on Joomla 4. And it has already been replaced by editor switcher 2. |
Uninstall SeoBoss as it does not work on Joomla 4. |
In the past, I used T4 Page Builder. As I am not using it anymore I will uninstall it. Before uninstalling export the current settings. So, if I want to I can use these settings with T4 Page Builder on Joomla 4 if I want to. |
Uninstalling all T4 Page Builder items because I will not use this extension on Joomla 4. |
Deleting all the template styles that are not needed anymore. In this case just one. |
In my case the T4 Framework caused my website to crash. The only option is to uninstall T4 Framework and install it again on Joomla 4. Therefore, I make a backup to the current settings. T4 Framework has no option to export or import settings. |
Check for issues on the vendor's website. |
There is an update available that Joomla's update service has not detected yet. So downloading... |
Switch editor 2.0.4 has been installed, thus 2.0.5 is a newer version. |
Installing the new Switch Editor version. |
And visible in Manage Extensions. |
And start the actual upgrade to Joomla 4.0.4. At the time of writing this blog the current version. And keep your fingers crossed. The update can take a couple of minutes. If you receive a 504 Bad Gateway error in your browser then you can do the following:
|
Actions on Joomla 4
Now, Joomla 3.10.3 has been upgraded to Joomla 4.0.4, at the time of writing of this blog post the current version.
And the new administrator interface. |
The homepage is not shown correctly. |
Change the captcha to CAPTCHA - reCAPTCHA. |
Enable Log Almost Everything. Then you can see what item is causing issues. |
Click [Save & Close] to save the settings. |
Set Cassiopeia as the default template. |
Uninstall the T4 Template. |
Now, the page is shown with the default Cassiopeia template. |
Install T4 Blank and T4 System plugin. |
Upload the local folder to .\templates\t4_blank. Then all the settings are restored. |
Set T4 Template Blank as the default template. |
And the website is shown perfectly with Joomla 4. |
And another page is shown perfectly as well. |
The file ./administrator/logs/everything.php It is obvious that T4 is causing issues here. That is why I decided to uninstall and install T4 again. |
Disable Log Almost Everything. Click [Save & Close]. |
Click on [Updates are available] on the Home Dashboard. |
Install all the available updates. |
If you have issues you can use the Forum Post Assistant from the Joomla Forum. It is very useful to find all kinds of issues. Also, if you want to post on the Joomla Forum it is appreciated if you add the output that the FPA generates. |
If you have any questions please do not hesitate to use the form below. Also, you can use the Joomla Forum to ask questions. Please keep in mind that I am not a real Joomla / Linux expert.