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 |
|---|---|---|---|---|---|---|---|---|
| #3001 | Ozow Gateway for WooCommerce | 97 | 2 | 10 | 800 | Non-prefixed constant | ||
| #3002 | WPC Fly Cart for WooCommerce | 97 | 32 | 10k+ | Non-prefixed hook name | |||
| #3003 | Media API for WooCommerce | 97 | 18 | 2 | 400 | wp function not compatible with requires wp | ||
| #3004 | Faview – Virtual Reviews for WooCommerce | 97 | 3 | 19 | 8k+ | Non-prefixed constant | ||
| #3005 | WordPress Beta Tester | 97 | 1 | 15 | 3k+ | Non-prefixed hook name | ||
| #3006 | Social Media Feed Gallery – Fetch Posts & Reels | 97 | 1 | 25 | 2k+ | Non-prefixed global variable | ||
| #3007 | LightPress Lightbox | 97 | 33 | 4 | 40k+ | Text Domain Mismatch | ||
| #3008 | WPMR Google Feed Manager for WooCommerce – Sell on Google Merchant Center & Shopping | 97 | 1 | 7 | 10k+ | trademarked term | ||
| #3009 | WPC Product Size Chart for WooCommerce | 97 | 19 | 2k+ | Non-prefixed class | |||
| #3010 | WPC Share Cart for WooCommerce | 97 | 32 | 1k+ | Non-prefixed hook name | |||
| #3011 | Smart Coupons For WooCommerce Coupons | 97 | 3 | 58 | 30k+ | Non-prefixed class | ||
| #3012 | Yandex Pay and Split | 97 | 2 | 16 | 400 | Non-prefixed global variable | ||
| #3013 | Blocks for ACF Fields — Display Custom Fields in the Block Editor | 98 | 21 | 1k+ | Non-prefixed hook name | |||
| #3014 | Post Category Filter (WP Admin) | 98 | 2 | 8 | 1k+ | trademarked term | ||
| #3015 | Animation Addons for Elementor – GSAP Motion Elementor Addons & Website Templates | 98 | 14 | 10k+ | Non-prefixed constant | |||
| #3016 | Auto SEO | 98 | 3 | 12 | 500 | Non-prefixed global variable | ||
| #3017 | Accordion – Responsive Horizontal & Vertical Accordion Block | 98 | 1 | 10 | 600 | Non-prefixed constant | ||
| #3018 | Call to Action Block by WPPOOL | 98 | 4 | 7 | 1k+ | trademarked term | ||
| #3019 | Card Transfer Gateway | 98 | 2 | 2 | 600 | Discouraged text-domain loading | ||
| #3020 | Contact Form Clean and Simple | 98 | 2 | 3 | 7k+ | Non-prefixed class | ||
| #3021 | Custom Color Palette for Gutenberg | 98 | 2 | 4 | 1k+ | Discouraged text-domain loading | ||
| #3022 | ElasticPress Debugging Add-On | 98 | 2 | 10 | 800 | Non-prefixed hook name | ||
| #3023 | WebToffee eCommerce Marketing Automation – Email marketing, Popups, Email customizer | 98 | 2 | 12 | 10k+ | Non-prefixed class | ||
| #3024 | DocumentCloud | 98 | 3 | 3 | 1k+ | Missing direct file access protection | ||
| #3025 | Easy Hide Login | 98 | 3 | 12 | 20k+ | Non-prefixed global variable | ||
| #3026 | WP All Export – User Export Add-On | 98 | 1 | 5 | 2k+ | trademarked term | ||
| #3027 | FAQ Block For Gutenberg | 98 | 3 | 5 | 4k+ | trademarked term | ||
| #3028 | HitPay Payment Gateway for WooCommerce | 98 | 2 | 2 | 4k+ | Non-prefixed class | ||
| #3029 | HTML Page Sitemap (Block and Shortcode) | 98 | 3 | 4 | 10k+ | wp function not compatible with requires wp | ||
| #3030 | Image Picker For Gravity Forms | 98 | 21 | 1k+ | Non-prefixed global variable | |||
| #3031 | International Telephone Input With Flags And Dial Codes | 98 | 7 | 7 | 1k+ | badly named files | ||
| #3032 | Language Switcher – Polylang for Divi | 98 | 43 | 500 | Non-prefixed global variable | |||
| #3033 | Latest Post Shortcode | 98 | 5 | 6 | 4k+ | Non-prefixed constant | ||
| #3034 | morkva Liqpay Extended | 98 | 3 | 4 | 400 | Non-prefixed class | ||
| #3035 | Multi Device Switcher | 98 | 2 | 9 | 20k+ | Non-prefixed function | ||
| #3036 | NIF (Num. de Contribuinte Português) for WooCommerce | 98 | 2 | 9 | 5k+ | Non-prefixed constant | ||
| #3037 | External Links in New Window / New Tab | 98 | 2 | 13 | 30k+ | Non-prefixed global variable | ||
| #3038 | PPWP – Password Protect Pages | 98 | 29 | 30k+ | Non-prefixed class | |||
| #3039 | ACF Post-2-Post | 98 | 1 | 7 | 3k+ | Non-prefixed hook name | ||
| #3040 | Custom Query Blocks | 98 | 6 | 13 | 700 | Non-prefixed hook name | ||
| #3041 | Pure Chat – Live Chat & More! | 98 | 4 | 6 | 3k+ | error log error log | ||
| #3042 | QR Code Creator | 98 | 1 | 3 | 900 | Non-prefixed class | ||
| #3043 | Restrict Dates Add-On for Gravity Forms | 98 | 1 | 19 | 500 | Non-prefixed global variable | ||
| #3044 | Semrush SEO Writing Assistant | 98 | 3 | 3 | 9k+ | Missing Arg Domain | ||
| #3045 | SheetDB – get your Google Spreadsheet data | 98 | 1 | 5 | 700 | Missing Version | ||
| #3046 | Suffice Toolkit | 98 | 2 | 25 | 1k+ | Non-prefixed class | ||
| #3047 | ThemeRuby Multi Authors – Assign Multiple Writers to Posts | 98 | 3 | 4 | 2k+ | wp function not compatible with requires wp | ||
| #3048 | Radius Portfolio – Filterable Grid, Gallery & Slider Portfolio | 98 | 1 | 14 | 8k+ | Non-prefixed class | ||
| #3049 | Video Player for WPBakery | 98 | 1 | 5 | 2k+ | trademarked term | ||
| #3050 | Cash On Pickup for WooCommerce | 98 | 16 | 4 | 8k+ | Text Domain Mismatch |