Methodology

Dismissed. is a forensic catalog, not an opinion column. Every entry traces back to a real line of code. Here's exactly how a notice gets booked and scored.

01

Enumerate the callbacks

We install each plugin and use WP-CLI + PHP Reflection to dump every callback hooked to admin_notices, all_admin_notices, and network_admin_notices — resolving each closure back to its file and line.

02

Check for a screen gate

A well-behaved notice checks get_current_screen() and only renders on its own pages. We render each callback under several unrelated screens; one that shows up everywhere has no gate — it hijacks the whole dashboard, and the count goes up.

03

Capture & recreate the render

Each notice's live HTML is captured and faithfully recreated in the wp-admin canvas you see on every artifact — same markup, same severity border, same missing dismiss button.

04

Score the severity

Critical Loads everywhere, non-dismissible or re-appears.
High Global license nag, telemetry, or donation beg.
Medium Global but dismissible / actionable.
Low Scoped to the plugin's own screen.
Plugin author? If your plugin is here, the fix is usually one line: gate your admin_notices callback behind a get_current_screen() check. Do that and you drop to Low. We re-scan monthly — get good and you'll watch your trend line fall.