You (or your host) moved the site to a newer PHP version and now it throws fatal errors, deprecation notices, or a blank page. This is common and fixable. Newer PHP releases remove functions that were deprecated years earlier, and any plugin or theme still using them breaks the moment the old version is gone.
1. Roll PHP back to get the site up
First, stop the bleeding. Almost every host lets you change PHP version from the control panel (often “PHP Selector” or “MultiPHP Manager”). Drop back one version — from 8.2 to 8.1, say — and the site should return. This buys you time to fix the cause properly instead of scrambling on a live outage.
2. Find the culprit in the debug log
Turn on logging in wp-config.php — define('WP_DEBUG', true); and define('WP_DEBUG_LOG', true); — then load the site on the new PHP version and read /wp-content/debug.log. Deprecation and fatal messages name the exact function and file, e.g. a removed function inside a specific plugin. That file tells you which plugin or theme is behind.
3. Update or replace the outdated component
Once you know the culprit:
- Update it. If the plugin or theme is still maintained, the current version almost certainly supports modern PHP. Update and re-test.
- Replace it. If it is abandoned — no update in years — swap it for a maintained alternative. Abandoned code will only break again on the next PHP release.
4. Test the upgrade on staging
Do the version bump and the fixes on a staging copy, not the live site. Set staging to the target PHP version, work through every error, click through the key pages and checkout, and only then move the change to production. That is the difference between a planned upgrade and an emergency.
Stay ahead of it
PHP versions reach end of life on a schedule, and hosts upgrade whether you are ready or not. Keeping plugins and themes current — and dropping abandoned ones — is what keeps the next PHP bump from being a fire drill. That is exactly what ongoing maintenance is for.
