Skip to main content
Blog

Is your Joomla website ready for PHP 8.5?

28 August 2026

PHP 8.5 is now available and is fully supported by recent versions of Joomla. However, this does not automatically mean that every Joomla website can be migrated to PHP 8.5 without any issues.

A Joomla website consists of more than just Joomla itself. Extensions, templates, overrides and customisations all contain PHP code. A single outdated extension or a piece of old code can be enough to cause error messages or even a completely blank page after the upgrade.

That is why it is wise to first check whether your website is ready for PHP 8.5.

Why upgrade to PHP 8.5?

PHP is the programming language on which Joomla runs. Just like Joomla itself, PHP is constantly being developed. New PHP versions bring improvements in terms of performance, security and code quality. At the same time, old functions are being phased out of PHP. As a result, code that worked perfectly well ten years ago may trigger warnings or errors on a modern PHP version.

A PHP upgrade is therefore also a good technical health check for your Joomla website.

1. Check your Joomla version

Start with the basics: which version of Joomla are you using? PHP 8.5 is fully supported from Joomla 5.4.2 and Joomla 6.0.2 onwards. Newer releases are now available, so my advice is simple: first update Joomla to the latest version within your Joomla series before upgrading PHP.

Are you still using Joomla 3 or Joomla 4? If so, you have a bigger problem than just PHP 8.5. These Joomla versions are outdated, and it is wise to plan a migration to a current Joomla version first.

A PHP upgrade does not, in fact, solve the problem of an outdated CMS.

2. Check all Joomla extensions

The Joomla core may well be compatible with PHP 8.5, whilst an extension may not be. You should therefore check your:

  • components
  • modules
  • plugins
  • editors
  • template frameworks
  • libraries and other extensions

First, update all extensions to the latest version.

Next, check with the developer to see if PHP 8.5 is officially supported. Extensions that haven’t been updated for some time deserve particular attention. And take a critical look at what’s still installed. There’s no need to make an extension you no longer use compatible with PHP 8.5. No longer needed? Uninstall it.

This will make your Joomla installation more organised whilst simultaneously reducing your website’s attack surface.

3. Don’t forget your template

Templates are regularly overlooked during PHP upgrades.

A Joomla template isn’t just made up of CSS, JavaScript and some nice colours. Templates and template frameworks often contain quite a lot of PHP code. For example, do you use YOOtheme Pro, Helix, Gantry or another framework? If so, check that you’re using an up-to-date version that’s compatible with both your Joomla and PHP versions.

Also check for any template overrides. Overrides are incredibly useful, but they have one drawback: they aren’t automatically updated when Joomla changes. An override that was once created for Joomla 3 or Joomla 4 may therefore still contain old PHP code years later.

4. Look for deprecated PHP code

This is where it gets interesting for me as a PHP programmer.

In new versions of PHP, certain functions and programming practices are initially marked as deprecated. They often still work, but PHP warns that they may be removed in a future version. It is best not to ignore these warnings.

Deprecation warnings are essentially your website’s technical health indicator. The more warnings you see, the greater the chance that the same code will actually break in the next PHP version. PHP 8.5 introduces several new deprecations. These are particularly likely to become apparent in older extensions and custom code. You should therefore not only check whether the front end of your website is ‘still working’, but also the PHP error logs.

These often contain much more interesting information than what you see in your browser.

5. Check custom code

Do you have custom code in your Joomla website? If so, it deserves extra attention. Consider, for example:

  • custom Joomla plugins
  • custom modules
  • template overrides
  • scripts in templates
  • CLI scripts and cron jobs
  • integrations with external systems
  • old PHP files that were once added “just for a quick fix”

It is precisely this type of code that falls outside the normal update process for Joomla and extensions. A website may appear to be working perfectly on the front end, whilst a cron job generates PHP errors every night. Therefore, do not just test the homepage.

6. Check the server settings

Installing PHP 8.5 is not the same as configuring PHP 8.5 correctly. Among other things, check whether the necessary PHP extensions are present and whether settings such as memory limits and upload limits are suitable for the website. Consider, for example, PHP extensions such as:

  • cURL
  • DOM/XML
  • GD or ImageMagick
  • Intl
  • JSON
  • Mbstring
  • MySQLi or PDO MySQL
  • OpenSSL
  • ZIP

Exactly which extensions you need depends on Joomla and the extensions you are using. 

You should also check settings such as memory_limit, upload_max_filesize, post_max_size and max_execution_time. Do not simply copy an old php.ini file to a new PHP version. Settings may change over the years or become obsolete.

7. Test PHP 8.5 on a staging environment first

My most important advice: do not simply switch an important production website from one PHP version to PHP 8.5. First, make a backup and, preferably, a copy of the website in a staging environment. Enable PHP 8.5 there and then do not just test whether the homepage appears. Check, for example:

  • front-end pages
  • Joomla administrator
  • logging in and out
  • forms
  • search
  • contact forms
  • multilingual support
  • user registration
  • email sending
  • uploads and images
  • scheduled tasks and cron jobs
  • external API integrations
  • caching
  • backups
  • PHP error logs

A website that opens without any visible error messages is not automatically fully compatible.

PHP 8.5 checklist for Joomla

Would you like to quickly check whether your Joomla website is ready for PHP 8.5?

  • Joomla has been updated to the latest version
  • All extensions have been updated
  • Extensions support PHP 8.5
  • Unused extensions have been removed
  • The template and template framework are up to date
  • Template overrides have been checked
  • Custom PHP code has been checked
  • Deprecation warnings have been investigated
  • PHP error logs have been checked
  • Required PHP extensions have been installed
  • PHP settings have been checked
  • A recent backup is available
  • The website has been tested on the staging environment
  • Both the front-end and back-end have been tested
  • Forms, email and cron jobs have been tested

Have you ticked everything off? If so, there’s a good chance your website will run on PHP 8.5 without any issues.

A PHP upgrade is more than just clicking a button

For a simple Joomla website with up-to-date extensions, the switch to PHP 8.5 can be completed in a matter of minutes. For a website that has been running for ten years, has survived several Joomla upgrades and contains customisations, old extensions and template overrides, it can be a different story.

That’s why I see a PHP upgrade not just as technical maintenance, but also as a good opportunity to carry out a thorough check.

Is the website still technically sound?

Are all the extensions still necessary? Is the customisation still up to standard? Are there any deprecated functions in the code? And will the website be able to transition smoothly to future versions of PHP and Joomla? If you tackle this properly now, you’ll not only have a website running on PHP 8.5, but, more importantly, a Joomla website that’s ready for the years ahead.

Need help checking or upgrading your Joomla website to PHP 8.5? Please feel free to contact me.

Peter Martin
Peter Martin
Joomla Specialist

Peter is a Joomla specialist en a Linux admin for fast, secure and scalable websites..

Recent articles

Correspondence

db8 Website Support
Galiciestraat 35
6663 NR Lent
The Netherlands

+31 85 301 48 28
support at db8 dot nl
+31 6 44 214 500 (urgent)

Nijmegen Office

NYMA makersplaats, Unit 69
Winselingseweg 16
6541 AK Nijmegen
Netherlands

By appointment
Monday to Friday
09:00 - 17:00 (5pm)
(Time zone: Central European Time)

Acquisition is
not appreciated

© db8.nl. All rights reserved.