Has your host announced the end of PHP 7.4, or is the WordPress Site Health page showing a warning? Upgrading to PHP 8.3 is not a mere formality, but it is not a leap in the dark either. With an upfront inventory, a staging environment and targeted testing, the migration can be done without downtime. Here is why you should stop waiting, and how I go about it.
Why upgrade to PHP 8.3 now
Each PHP version is supported for a limited time: first with bug fixes, then with security fixes only, then nothing at all. PHP 7.4, 8.0 and 8.1 no longer receive any fixes; the official schedule is published on php.net. Staying on an abandoned version means:
- exposing the server to known vulnerabilities that will never be patched;
- sooner or later facing a migration forced by your host, which eventually removes old versions, often at the worst possible moment;
- missing out on performance gains: 8.x versions generally run the same code faster than PHP 7;
- blocking updates, since recent versions of CMSs, plugins and modules require a recent PHP.
PHP 8.3 is a sensible target: still supported for security, widely offered by hosts and well supported across the ecosystem. If your site is compatible with an even newer version, all the better: the method is the same.
What breaks during a PHP upgrade
WordPress core is compatible with PHP 8.3: problems almost always come from the code around it, meaning plugins, themes, modules and custom development. The most common breaking points:
- functions removed in PHP 8.0, such as
create_function()oreach(), still found in older code; - string-to-number comparisons whose result has changed;
- fatal errors where PHP 7 only raised a warning;
- a flood of deprecation notices (
nullpassed to built-in functions, dynamic class properties) that fill the logs and herald the breaking changes of future versions.
WordPress and PrestaShop: two different cases
On WordPress, check the PHP version each plugin and the theme have been tested with, and update everything before switching versions. Abandoned plugins and premium themes bought years ago are the usual weak spots.
On PrestaShop, the PHP version is tied to the store version: each branch (1.7, 8, 9) only accepts a range of PHP versions. Depending on your version, moving to PHP 8.3 may therefore first require upgrading PrestaShop itself. Check the official compatibility chart before anything else, then review every module and override.
How to migrate without breaking anything
- Inventory: current PHP and CMS versions, list of plugins or modules, custom development.
- Code analysis: tools such as PHPCompatibility (for PHP_CodeSniffer) flag incompatible code before it even runs.
- Staging: a protected copy of the site running PHP 8.3, with outgoing emails disabled.
- Testing: go through key pages, forms, login, checkout and the back office while watching the PHP error log.
- Fixes: update or replace incompatible plugins, fix custom code.
- Switchover: change the version in production at a quiet time, with a backup and the option to revert to the previous PHP version from your hosting control panel.
After the migration
Keep an eye on the error log for a few days: some code paths only run occasionally (scheduled tasks, exports, rarely used payment methods). Use the switch as an opportunity to check that OPcache is enabled: it is often a performance gain that costs nothing.
Would you rather delegate? The PHP 8.3 upgrade for WordPress or PrestaShop costs €390 excl. VAT (40,000 DZD in Algeria): compatibility analysis, code fixes, testing and a switchover with no downtime. If your PrestaShop store needs a version upgrade first, see the PrestaShop 8 or 9 migration.