Check your WordPress site for PHP 8.5 compatibility in four steps

By CompatNav · Published · Last reviewed · 2 min read

Short answer

Install the free CompatNav plugin, choose PHP 8.5 under Tools → CompatNav, run the scan, and read the verdict: “Safe to upgrade to PHP 8.5”, or “Not ready yet” with what to do first. It checks every plugin and theme on your own server, reports only what changes between your current PHP and 8.5, and says which findings stop a page and which only add notices. WordPress itself (6.9 and later) is compatible with PHP 8.5; your plugins and theme decide.

Why check for PHP 8.5 now

PHP 8.5 gets security fixes until 31 December 2029, the longest of any version available today; PHP 8.2 stops getting them on 31 December 2026 (php.net). The WordPress core team’s compatibility page lists WordPress 6.9 and later as compatible with PHP 8.5. So the question is your plugins and your theme.

Step 1: install CompatNav

In your WordPress admin, go to Plugins → Add New Plugin, search for CompatNav, install and activate it. It’s free, from wordpress.org, and needs WordPress 6.0 and PHP 7.4 or newer.

Step 2: choose PHP 8.5

Go to Tools → CompatNav. Next to Check readiness for, choose 8.5. CompatNav compares the PHP version your site runs today with 8.5 and reports only what changes between the two, so a site already on 8.4 gets a short list, and one on 7.4 a longer one.

Step 3: run the scan

Start the scan. It runs in short background steps with a progress bar; you can pause, resume or cancel it. It only reads files: it never runs or changes the code it checks, and nothing leaves your server.

Step 4: read the verdict

The report’s verdict: “Safe to upgrade to PHP 8.5: nothing active will break”.
The verdict when nothing active will break (fictional demo plugins).
  • “Safe to upgrade to PHP 8.5”: nothing active will break. Deprecation notices may be listed; they don’t stop pages.
  • “Not ready yet”: something active will break, with a short “What to do first” list. Not ready yet: what to do explains each step.

Each finding is labelled. A real one, from a PHP 8.5 change that only adds a notice:

What each PHP 8.5 change means, the three that can stop code and the ones that only add notices: WordPress and PHP 8.5.

After the check

  1. Fix or update what will break.
  2. Switch to PHP 8.5 in your hosting panel (how), at a quiet time.
  3. Watch the error log for a few days: problems that depend on values, such as null used as an array key at run time, only show up there.

Key takeaways

  • WordPress 6.9 and later are compatible with PHP 8.5; your plugins and theme decide whether your site is.
  • Step 1: install CompatNav. Step 2: choose PHP 8.5. Step 3: scan. Step 4: read the verdict.
  • PHP 8.5 gets security fixes until 31 December 2029, the longest of any version today.
  • Most PHP 8.5 changes only add deprecation notices; three you’re likely to meet can stop code.
  • Problems that depend on values can’t be seen by any code check: watch the log after the switch.

Frequently asked questions

Is WordPress compatible with PHP 8.5?

Yes, WordPress 6.9 and later, according to the WordPress core team’s compatibility page. Whether your site is depends on its plugins and theme.

How long does the check take?

It depends on the size of the site. On a test site with 17 plugins and themes (8,374 PHP files), a full CompatNav scan took about 70 seconds.

What if the verdict is “Not ready yet”?

Follow the short list of what to do first: update what has an update, contact the developer of what doesn’t, or replace it. Our docs page “Not ready yet” walks through it.

Check your own site before you upgrade

CompatNav is a free WordPress plugin. It reads the code of your plugins and themes on your own server and tells you, in plain words, what will break and what will only show notices on the PHP version you choose. It never changes your code. It can’t see problems that only appear while code runs with real data, so a quick check of your site after the upgrade still matters.

Get CompatNav on wordpress.org How it works

Sources

About the code examples: each output is the real output of the code shown, run with the official PHP builds, without a php.ini, with all errors reported and displayed. Only the file path was replaced by a neutral server path.