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 |
|---|---|---|---|---|---|---|---|---|
| #2251 | Pago por Redsys | 50 | 44 | 59 | 700 | Text Domain Mismatch | ||
| #2252 | PostmagThemes Demo Import | 50 | 191 | 114 | 1k+ | Text Domain Mismatch | ||
| #2253 | Razorpay Payment Links for WooCommerce | 50 | 16 | 34 | 1k+ | Nonce verification recommended | ||
| #2254 | Send Emails with Mandrill | 50 | 36 | 141 | 6k+ | Non-prefixed global variable | ||
| #2255 | Theme Demo Import | 50 | 101 | 95 | 5k+ | Non-prefixed hook name | ||
| #2256 | BestWebSoft's Twitter | 50 | 477 | 174 | 900 | Text Domain Mismatch | ||
| #2257 | User Activity Tracking and Log | 50 | 30 | 263 | 2k+ | Non-prefixed global variable | ||
| #2258 | Veeqo for WooCommerce | 50 | 30 | 17 | 700 | Missing direct file access protection | ||
| #2259 | Calculadora de Frete e Campos Checkout para o Brasil | 50 | 1 | 138 | 5k+ | Missing nonce verification | ||
| #2260 | Cart Popup for WooCommerce | 51 | 9 | 115 | 9k+ | Non-prefixed global variable | ||
| #2261 | Feeds for TikTok – Display Video Feeds in Grid Layouts | 51 | 18 | 59 | 1k+ | Request data is not unslashed | ||
| #2262 | Counter Box – Add Countdowns, Timers & Dynamic Counters to WordPress | 51 | 3 | 116 | 1k+ | Missing nonce verification | ||
| #2263 | Dolyame Payment gateway | 51 | 122 | 10 | 700 | Text Domain Mismatch | ||
| #2264 | Easy Search Replace – Find & Replace Text/HTML/URLs, Remove Footer Credit | 51 | 6 | 61 | 500 | Input is not sanitized | ||
| #2265 | Juicer.io: Effortlessly embed, curate, and aggregate social media feeds into your website | 51 | 44 | 34 | 9k+ | Output is not escaped | ||
| #2266 | Menu Icons by Themeisle – Add Icons to Navigation Menus | 51 | 34 | 22 | 100k+ | Output is not escaped | ||
| #2267 | Mintpay | 51 | 14 | 35 | 600 | Nonce verification recommended | ||
| #2268 | OnSale Page for WooCommerce | 51 | 30 | 44 | 2k+ | Text Domain Mismatch | ||
| #2269 | POLi Payments for WooCommerce | 51 | 62 | 26 | 500 | Text Domain Mismatch | ||
| #2270 | Quotes and Tips by BestWebSoft | 51 | 485 | 190 | 1k+ | Text Domain Mismatch | ||
| #2271 | SePay Gateway | 51 | 12 | 39 | 2k+ | Nonce verification recommended | ||
| #2272 | StoryChief | 51 | 12 | 55 | 1k+ | Input is not sanitized | ||
| #2273 | Toolbar Publish Button | 51 | 37 | 4 | 5k+ | Unsafe printing function | ||
| #2274 | VK Filter Search | 51 | 35 | 71 | 6k+ | Nonce verification recommended | ||
| #2275 | Payment Gateway Payoneer For WooCommerce | 51 | 9 | 35 | 900 | Input is not validated | ||
| #2276 | WP Counter Up – Animated Number Counter & Milestone Showcase | 51 | 18 | 239 | 1k+ | Non-prefixed global variable | ||
| #2277 | GSheetConnector for Gravity Forms – Send Gravity Forms Entries to Google Sheets in Real-Time | 52 | 26 | 27 | 1k+ | Exception output is not escaped | ||
| #2278 | Stealth Publish | 52 | 7 | 22 | 900 | Missing nonce verification | ||
| #2279 | Custom Post Template By Templatic | 52 | 19 | 14 | 600 | Text Domain Mismatch | ||
| #2280 | TNC Toolbox: Web Performance | 52 | 20 | 25 | 1k+ | Output is not escaped | ||
| #2281 | Notiqoo – Order Notification & Customer Chat for WooCommerce | 52 | 11 | 187 | 1k+ | Non-prefixed global variable | ||
| #2282 | Thank You Page Customizer for WooCommerce – Increase Your Sales | 52 | 5 | 249 | 4k+ | Non-prefixed global variable | ||
| #2283 | Price Based on Country for WooCommerce | 52 | 43 | 126 | 20k+ | Non-prefixed hook name | ||
| #2284 | Products Per Page for WooCommerce | 52 | 22 | 28 | 10k+ | Output is not escaped | ||
| #2285 | WP Hooks Finder | 52 | 27 | 31 | 1k+ | Output is not escaped | ||
| #2286 | Column Shortcodes | 53 | 32 | 9 | 60k+ | Unsafe printing function | ||
| #2287 | Disable Comments – Remove Comments & Stop Spam [Multi-Site Support] | 53 | 15 | 46 | 1m+ | Non-prefixed global variable | ||
| #2288 | Export Custom Pages | 53 | 22 | 19 | 700 | Output is not escaped | ||
| #2289 | File Manager | 53 | 41 | 68 | 10k+ | Missing direct file access protection | ||
| #2290 | LearnPress – bbPress Integration | 53 | 19 | 14 | 2k+ | Output is not escaped | ||
| #2291 | LuckyWP ACF Menu Field | 53 | 46 | 9 | 5k+ | Short PHP open tag found | ||
| #2292 | ONTRApages | 53 | 16 | 27 | 1k+ | Output is not escaped | ||
| #2293 | 워드프레스 결제 심플페이 – 우커머스 결제 플러그인 | 53 | 79 | 92 | 1k+ | Missing direct file access protection | ||
| #2294 | Royal WordPress Backup, Restore & Migration Plugin – Backup WordPress Sites Safely | 53 | 34 | 90 | 20k+ | Database parameter is not escaped | ||
| #2295 | Widget Context | 53 | 14 | 20 | 40k+ | Non-prefixed hook name | ||
| #2296 | Ultimate Gift Cards for WooCommerce | 53 | 4 | 450 | 7k+ | Non-prefixed global variable | ||
| #2297 | WP Login Logo | 53 | 28 | 9 | 500 | Unsafe printing function | ||
| #2298 | Blockskit | 54 | 33 | 29 | 8k+ | Text Domain Mismatch | ||
| #2299 | Booking Calendar | 54 | 28 | 85 | 50k+ | Mixed line endings | ||
| #2300 | Easy Elementor Addons – Addons Pack for Elementor Page Builder | 54 | 35 | 68 | 1k+ | Post Not In exclude |