WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedConstantFound
Non-prefixed constant
The plugin defines a constant 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 constant 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 |
|---|---|---|---|---|---|---|---|---|
| #1451 | SAML IDP (Identity Provider) – Login with Website Users | 35 | 13 | 326 | 600 | Non-prefixed global variable | ||
| #1452 | NGG Smart Image Search | 35 | 298 | 155 | 400 | Output is not escaped | ||
| #1453 | Nginx Cache Controller | 35 | 79 | 96 | 1k+ | Text Domain Mismatch | ||
| #1454 | One Page Express Companion | 35 | 132 | 65 | 10k+ | Output is not escaped | ||
| #1455 | OPcache Manager | 35 | 155 | 75 | 1k+ | Output is not escaped | ||
| #1456 | Order Delivery Date for WooCommerce | 35 | 2,060 | 73 | 10k+ | wp function not compatible with requires wp | ||
| #1457 | OT Flatsome Vertical Menu | 35 | 126 | 26 | 10k+ | Text Domain Mismatch | ||
| #1458 | Page Optimize | 35 | 70 | 41 | 200k+ | Non Singular String Literal Domain | ||
| #1459 | Paybox WooCommerce Payment Gateway | 35 | 165 | 88 | 500 | Non Singular String Literal Domain | ||
| #1460 | Pearl – Header Builder | 35 | 7 | 283 | 5k+ | Non-prefixed global variable | ||
| #1461 | Phone Orders for WooCommerce | 35 | 1 | 229 | 1k+ | Non-prefixed hook name | ||
| #1462 | Planyo online reservation system | 35 | 64 | 90 | 400 | Output is not escaped | ||
| #1463 | Popular Posts | 35 | 166 | 71 | 900 | Unsafe printing function | ||
| #1464 | Post Draft Preview | 35 | 49 | 69 | 700 | Text Domain Mismatch | ||
| #1465 | Presto Player | 35 | 37 | 77 | 100k+ | Missing Arg Domain | ||
| #1466 | Product Prices by User Roles for WooCommerce | 35 | 12 | 19 | 1k+ | Non-prefixed hook name | ||
| #1467 | Product Input Fields for WooCommerce | 35 | 18 | 84 | 4k+ | Non-prefixed function | ||
| #1468 | Ninjalytics: Sales Reports & Order Export for WooCommerce and EDD | 35 | 6 | 32 | 6k+ | Non-prefixed global variable | ||
| #1469 | Quran multilanguage Text & Audio | 35 | 177 | 166 | 500 | Output is not escaped | ||
| #1470 | Flutterwave WooCommerce | 35 | 7 | 20 | 2k+ | Non-prefixed class | ||
| #1471 | ReOrder Posts within Categories | 35 | 39 | 207 | 7k+ | Non-prefixed global variable | ||
| #1472 | Restrict Elementor Widgets, Columns and Sections | 35 | 18 | 53 | 500 | Non-prefixed function | ||
| #1473 | SEUR Oficial | 35 | 25 | 298 | 1k+ | Non-prefixed global variable | ||
| #1474 | Shipping Zones by Drawing for WooCommerce | 35 | 278 | 95 | 600 | Text Domain Mismatch | ||
| #1475 | Show/Hide Content at Set Time | 35 | 17 | 7 | 10k+ | date date | ||
| #1476 | Simple Export Import for ACF Data | 35 | 19 | 64 | 1k+ | Request data is not unslashed | ||
| #1477 | Simple Image Sizes | 35 | 53 | 75 | 60k+ | Unsafe printing function | ||
| #1478 | Sky Login Redirect | 35 | 7 | 24 | 2k+ | Non-prefixed hook name | ||
| #1479 | SiteOrigin CSS | 35 | 61 | 84 | 100k+ | Not In Footer | ||
| #1480 | Social Sharing Plugin – Social Warfare | 35 | 17 | 143 | 20k+ | Non-prefixed class | ||
| #1481 | Solid Performance – Your No-Code Caching, Performance, & Page Speed Solution | 35 | 75 | 61 | 4k+ | Exception output is not escaped | ||
| #1482 | Ray | 35 | 3 | 2 | 500 | Hidden files included | ||
| #1483 | Spectra Blocks – AI Website Builder for the Block Editor | 35 | 243 | 1,251 | 5k+ | Non-prefixed global variable | ||
| #1484 | Sprout Invoices – Client Invoicing & Estimates | 35 | 40 | 1,800 | 1k+ | Non-prefixed hook name | ||
| #1485 | SrbTransLatin – Serbian Latinisation | 35 | 11 | 28 | 2k+ | Non-prefixed global variable | ||
| #1486 | Stars Testimonials — Responsive Reviews & Star Ratings | 35 | 29 | 253 | 1k+ | Non-prefixed global variable | ||
| #1487 | Steady for WordPress | 35 | 6 | 13 | 600 | Non-prefixed global variable | ||
| #1488 | Sticky Chat Widget – Floating Chat Icons, Contact Form, Call, Click to Chat, Email & Message Buttons | 35 | 33 | 293 | 10k+ | Non-prefixed global variable | ||
| #1489 | TBThemes Theme Import | 35 | 84 | 48 | 400 | Text Domain Mismatch | ||
| #1490 | Starter Sites & Templates by Neve | 35 | 28 | 88 | 100k+ | Non-prefixed hook name | ||
| #1491 | Advance Product Search- Voice & Ajax Search for WooCommerce | 35 | 125 | 92 | 10k+ | Text Domain Mismatch | ||
| #1492 | Theme Blvd Layout Builder | 35 | 207 | 169 | 2k+ | Output is not escaped | ||
| #1493 | ThemeRain Core | 35 | 69 | 61 | 1k+ | Text Domain Mismatch | ||
| #1494 | Thumbnail Editor | 35 | 187 | 68 | 600 | wp function not compatible with requires wp | ||
| #1495 | Transcoder | 35 | 42 | 111 | 400 | Non-prefixed function | ||
| #1496 | Two Factor Authentication | 35 | 108 | 139 | 20k+ | Output is not escaped | ||
| #1497 | Ultimate Post List | 35 | 186 | 84 | 2k+ | Missing Arg Domain | ||
| #1498 | Spreadconnect | 35 | 128 | 126 | 700 | Output is not escaped | ||
| #1499 | WEDOS OnLine monitoring | 35 | 36 | 15 | 700 | Output is not escaped | ||
| #1500 | All-in-One Addons for Elementor – WidgetKit | 35 | 60 | 311 | 8k+ | Non-prefixed global variable |