Open wp-admin on any site with a real plugin stack. Before you do anything, the dashboard greets you with a discount banner from one plugin, a "rate us 5 stars" nag from another, the "Welcome to WordPress" panel, and a row of update notices. Admin notices are shared real estate, and every plugin treats its marketing like an emergency.
The quick fix everyone reaches for is a snippet:
add_action('admin_head', function () {
remove_all_actions('admin_notices');
remove_all_actions('all_admin_notices');
});
This works — and it's a problem. remove_all_actions('admin_notices') is a blanket. It hides the "your scheduled backup failed" notice and the "critical security update" notice right alongside the "upgrade to Pro" banner. You've traded a cluttered dashboard for a silent one, which is worse. To be selective you'd have to hook earlier, inspect each registered callback, and filter by source — real code you build and maintain on every install.
I tested the settings-panel version with WP Adminify Pro instead. Short demo below (20s).
What a notice-flooded dashboard costs you:
- The first 10 seconds of every login spent dismissing banners
- Reflex-dismissing notices — so the one that mattered slips past
- Clients confused by plugin marketing on the dashboard you built them
What changed after enabling Hide Admin Notices in Adminify Pro:
- One toggle under Productivity — the dashboard clears on every admin screen
- Hide all for a clean slate, or disable individually to keep warnings and drop marketing
- Real alerts (updates, errors) can stay; the upsells go
- Works on every admin page, no snippet to maintain across sites
Step-by-step doc: https://wpadminify.com/docs/adminify/productivity/hide-admin-notices
How do you handle admin-notice spam — a remove_all_actions snippet, a mu-plugin, or just living with it?
Top comments (0)