Surviving the PHP 8.3 Upgrade: Fixing Critical Errors and Blank Screens in WordPress
Upgrading to PHP 8.3 can feel like a leap forward—better speed, more security, and long-term support. But for many site owners and developers, the upgrade has triggered critical errors, blank screens, and broken dashboards. The culprit? Themes, plugins, or snippets that aren’t yet compatible with PHP’s stricter rules.
To help, I’ve prepared two versions of this guide:
👩💻 Developer-Focused Guide
Common Issues
- Fatal errors from deprecated functions.
- WooCommerce add-ons not PHP 8.3-compatible.
- Custom code snippets breaking with strict types.
Troubleshooting Steps
-
Turn on Debugging
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);→ Errors write to
/wp-content/debug.log. - Temporarily Downgrade
Use hosting control panel to temporarily switch back to PHP 8.2 for debugging. - Narrow Down the Problem
- Use the Health Check plugin in Troubleshooting mode.
- Or manually rename
/pluginsor/themesfolders.
- Audit Code
- Run PHPStan or Rector to find incompatibilities.
- Check for deprecated functions (
utf8_encode, dynamic properties, etc.).
- Update Everything
- Core, themes, plugins → latest versions.
- Replace unmaintained extensions with active alternatives.
- Compatibility Tools
- Use PHP Compatibility Checker plugin for scans.
- Use Composer constraints if you’re managing code as a developer.
Pro Tips
- Maintain a compatibility matrix (PHP ↔ WP ↔ WooCommerce ↔ major plugins).
- Use staging environments for all PHP bumps.
- Install error tracking (New Relic, Sentry, or Query Monitor plugin).
🧑💼 Site Owner-Friendly Guide
What’s Happening?
When your hosting provider updates to PHP 8.3, some plugins or themes might not be prepared. This can result in your site displaying a blank page or a “critical error” message.
How to Fix Quickly
- Switch Back Temporarily
- Go back to your hosting panel and revert PHP to 8.1 or 8.2.
- This will get your site online again.
- Update Your Site
- Log in to WordPress.
- Update WordPress core, themes, and plugins.
- If any plugin hasn’t been updated for months/years, replace it.
- Check Compatibility
- Install the Health Check & Troubleshooting plugin.
- Run a scan to see which plugin or theme is causing problems.
- Ask Your Host for Help
- Some managed WordPress hosts also perform compatibility checks for you.
Prevent It Next Time
- Test updates on a staging site before installing them everywhere.
- Regularly update your plugins/themes.
- Use a developer if you use legacy or bespoke code.
Final Thoughts
PHP 8.3 is not going anywhere, but your website doesn’t have to suffer for it. Developers can use debug logs, Rector, and static analysis to make their code future-proof, and site owners can simply use updated, well-maintained themes and plugins. If you do it right, you can get the advantages of PHP 8.3 without the pain.