WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedClassFound
Non-prefixed class
The plugin defines a class without a plugin-specific prefix.
Why It Shows Up
WordPress loads many plugins in the same PHP runtime. Plugin Check found a global symbol or hook name that is not clearly namespaced to this plugin.
Why It Matters
Unprefixed globals can collide with WordPress core, themes, or other plugins, causing fatal errors, overwritten values, or handlers running in the wrong context.
How to Fix
- Choose a short, unique prefix or namespace based on the plugin slug or vendor name.
- Rename the class so it cannot collide with code from another plugin.
- For public hooks, document the final hook name and keep it stable after release.
References
Affected Plugins
| Rank | Plugin | Score | Errors | Warnings | Installs | Added | Updated | Top Issue |
|---|---|---|---|---|---|---|---|---|
| #2351 | PDF invoice for WP ERP | 58 | 96 | 134 | 2k+ | Non-prefixed global variable | ||
| #2352 | Error Log Viewer by BestWebSoft | 58 | 433 | 172 | 6k+ | Text Domain Mismatch | ||
| #2353 | List Last Changes | 58 | 50 | 15 | 1k+ | Output is not escaped | ||
| #2354 | Menu Swapper | 58 | 20 | 14 | 3k+ | Output is not escaped | ||
| #2355 | PageLoader Lite – Loading Screen | 58 | 29 | 17 | 700 | Output is not escaped | ||
| #2356 | Remove CPT base | 58 | 15 | 16 | 10k+ | Input is not sanitized | ||
| #2357 | Responsive Select Menu | 58 | 29 | 27 | 3k+ | Output is not escaped | ||
| #2358 | REVIEWS.io for WooCommerce | 58 | 71 | 161 | 1k+ | Non-prefixed global variable | ||
| #2359 | SportsPress for Basketball | 58 | 104 | 34 | 1k+ | Text Domain Mismatch | ||
| #2360 | SportsPress for Football (Soccer) | 58 | 107 | 34 | 6k+ | Text Domain Mismatch | ||
| #2361 | SportsPress for Volleyball | 58 | 107 | 34 | 500 | Text Domain Mismatch | ||
| #2362 | View Admin As | 58 | 307 | 135 | 9k+ | Non Singular String Literal Domain | ||
| #2363 | WebP Express Plus | 58 | 19 | 11 | 700 | Unsafe printing function | ||
| #2364 | Social Media Auto Poster – Schedule & Publish to Buffer | 58 | 23 | 211 | 7k+ | Dynamic hook name | ||
| #2365 | Connect SendGrid for Emails | 59 | 37 | 103 | 900 | Missing direct file access protection | ||
| #2366 | ELEX WooCommerce Name Your Price | 59 | 295 | 117 | 600 | Missing Arg Domain | ||
| #2367 | Fathom Analytics Conversions | 59 | 14 | 47 | 400 | Non-prefixed function | ||
| #2368 | JetSticky For Elementor | 59 | 13 | 38 | 30k+ | Nonce verification recommended | ||
| #2369 | Mango Buttons | 59 | 14 | 21 | 3k+ | Output is not escaped | ||
| #2370 | Side Menu Lite – Sticky Floating Side Menu | 59 | 9 | 123 | 7k+ | Non-prefixed global variable | ||
| #2371 | Super Progressive Web Apps | 59 | 62 | 22 | 40k+ | wp function not compatible with requires wp | ||
| #2372 | Unlimited Addons For Gutenberg Blocks | 59 | 16 | 68 | 900 | slow db query meta key | ||
| #2373 | Payment Gateway for LiqPay for Woocommerce | 59 | 84 | 31 | 1k+ | Text Domain Mismatch | ||
| #2374 | Hide Posts | 59 | 9 | 70 | 20k+ | Direct Query | ||
| #2375 | Disable Emails | 60 | 25 | 16 | 30k+ | Short PHP open tag found | ||
| #2376 | FancyBox for WordPress | 60 | 175 | 33 | 30k+ | Text Domain Mismatch | ||
| #2377 | Flat Rate per State/Country/Region for WooCommerce | 60 | 27 | 4 | 1k+ | Output is not escaped | ||
| #2378 | Genesis Featured Widget Amplified | 60 | 126 | 12 | 2k+ | Text Domain Mismatch | ||
| #2379 | iubenda | All-in-one Compliance for GDPR / CCPA Cookie Consent + more | 60 | 405 | 271 | 200k+ | Text Domain Mismatch | ||
| #2380 | Order Export & Order Import for WooCommerce | 60 | 247 | 698 | 60k+ | Non-prefixed global variable | ||
| #2381 | Stratum Widgets for Elementor | 60 | 66 | 366 | 20k+ | Non-prefixed global variable | ||
| #2382 | Team – Team Members Showcase Plugin | 60 | 12 | 781 | 10k+ | Non-prefixed global variable | ||
| #2383 | WoowGallery | 60 | 15 | 178 | 1k+ | Non-prefixed global variable | ||
| #2384 | WP Bottom Menu | 60 | 74 | 52 | 20k+ | Non-prefixed hook name | ||
| #2385 | WPSSO Schema Product Metadata for WooCommerce | 60 | 33 | 23 | 500 | Missing Translators Comment | ||
| #2386 | Creative Commons | 61 | 103 | 17 | 700 | Text Domain Mismatch | ||
| #2387 | Country and State Selection Addon for Gravity Forms | 61 | 14 | 26 | 1k+ | Non-prefixed constant | ||
| #2388 | Hotjar | 61 | 16 | 4 | 70k+ | Output is not escaped | ||
| #2389 | Magic Tooltips For Contact Form 7 | 61 | 37 | 21 | 700 | Text Domain Mismatch | ||
| #2390 | Post/Page Import Export – Migrate Content with Custom Fields & Taxonomies | 61 | 12 | 27 | 400 | Input is not sanitized | ||
| #2391 | Powerkit – Supercharge your WordPress Site | 61 | 67 | 116 | 10k+ | Non-prefixed global variable | ||
| #2392 | HuCommerce | Magyar kiegészítések WooCommerce webáruházakhoz | 61 | 17 | 194 | 10k+ | Non-prefixed function | ||
| #2393 | Team Showcase | 61 | 1 | 125 | 1k+ | slow db query meta key | ||
| #2394 | Text Domain Inspector | 61 | 41 | 36 | 400 | Non-prefixed global variable | ||
| #2395 | When Last Login – Export User Records | 61 | 18 | 13 | 500 | Output is not escaped | ||
| #2396 | AMP Contact FORM 7 – AMPCF7 | 62 | 9 | 13 | 500 | Input is not validated | ||
| #2397 | ARI Fancy Lightbox – Popup for WordPress | 62 | 8 | 107 | 10k+ | Non-prefixed namespace | ||
| #2398 | Bulk edit publish date | 62 | 11 | 16 | 1k+ | Nonce verification recommended | ||
| #2399 | Checkout Countdown for WooCommerce – Boost Conversions & Reduce Cart Abandonment | 62 | 43 | 12 | 3k+ | Output is not escaped | ||
| #2400 | Column Separator for Beaver Builder | 62 | 61 | 17 | 400 | Output is not escaped |