Every admin on a WordPress site below the recommended PHP version sees the same red box on the dashboard: "PHP Update Required — Your site is running an outdated version of PHP (7.4.30), which does not receive security updates and soon will not be supported by WordPress." There's a "Learn more about updating PHP" button — but no Dismiss link.
WordPress renders that warning as a dashboard nag widget with the id dashboard_php_nag, registered in wp_dashboard_setup(). It shows for every admin, on every dashboard load. And you often can't clear it the "right" way on the spot: the PHP version is controlled by the host, a dependency plugin hasn't been tested against the newer build, or the upgrade is scheduled for a maintenance window.
The developer fix is to unhook the nag:
add_action('wp_dashboard_setup', function () {
remove_meta_box('dashboard_php_nag', 'dashboard', 'normal');
});
This removes the PHP Update Required notice for every admin. But it's a snippet you drop into a mu-plugin and re-add on every install — and the moment you also want to clear the other admin-notice clutter (plugin promos, update nags, review requests), you're back to maintaining a growing list of remove_action/remove_meta_box calls.
I tested the settings-panel version with WP Adminify Pro instead. Short demo below (20s).
What the PHP notice actually costs on a real site:
- Every admin — including clients — opens to a red "does not receive security updates" banner
- It has no Dismiss button, so nobody can clear it from the UI
- On client sites it generates "is my site broken?" support tickets for a warning you already know about
What changed after enabling Hide Admin Notices in Adminify Pro:
- One toggle under Productivity — the PHP nag is hidden site-wide for every admin
- The same module clears the rest of the admin-notice pile-up (plugin promos, review nags) from the top of every screen
- Survives WordPress updates, no snippet to maintain across sites
- Dashboard opens straight to Site Health / At a Glance
The important caveat: hiding the notice does not update PHP. It removes the alarm from the interface; your PHP version is unchanged. Only hide it once you've made an informed call — confirm your host's supported PHP, check plugin compatibility, and schedule the real upgrade. This is a cosmetic step for client peace of mind, not a security fix.
Step-by-step doc: https://wpadminify.com/docs/adminify/productivity/hide-admin-notices
How do you handle the PHP update nag on client sites — unhook dashboard_php_nag, hide it via a plugin, or leave it until you can upgrade?