WordPress.NamingConventions.PrefixAllGlobals.VariableConstantNameFound
Non-prefixed global variable
The plugin defines a global variable 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 global variable 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 |
|---|---|---|---|---|---|---|---|---|
| #251 | Variation Swatches for WooCommerce | 59 | 11 | 64 | 300k+ | Non-prefixed global variable | ||
| #252 | Post/Page Import Export – Migrate Content with Custom Fields & Taxonomies | 61 | 12 | 27 | 400 | Input is not sanitized | ||
| #253 | Powerkit – Supercharge your WordPress Site | 61 | 67 | 115 | 10k+ | Non-prefixed global variable | ||
| #254 | Carousel Slider | 62 | 71 | 30k+ | Non-prefixed global variable | |||
| #255 | Custom Permalink Editor | 62 | 4 | 51 | 3k+ | Non-prefixed hook name | ||
| #256 | Phone Validator for WooCommerce | 63 | 8 | 33 | 1k+ | Missing nonce verification | ||
| #257 | Disabler | 64 | 212 | 38 | 900 | Text Domain Mismatch | ||
| #258 | Inactive Logout | 64 | 30 | 71 | 10k+ | Non-prefixed global variable | ||
| #259 | Flexible Product Fields (WooCommerce Product Addons) – WooCommerce Product Page Editor | 67 | 57 | 98 | 10k+ | Non-prefixed global variable | ||
| #260 | Kraken.io Image Optimizer – Compress, Convert to WebP & AVIF, Resize & Bulk Optimize | 67 | 293 | 80 | 9k+ | Text Domain Mismatch | ||
| #261 | Product Specifications for Woocommerce | 67 | 12 | 80 | 1k+ | Non-prefixed global variable | ||
| #262 | One Stop Shop for WooCommerce | 68 | 23 | 83 | 10k+ | Input is not sanitized | ||
| #263 | Product Category Slider for WooCommerce | 68 | 21 | 104 | 800 | Non-prefixed hook name | ||
| #264 | WebDefender Security – Protection & AntiSpam | 70 | 176 | 61 | 1k+ | wp function not compatible with requires wp | ||
| #265 | Shipping Notices and No shipping options found info for WooCommerce | 70 | 9 | 18 | 400 | Non-prefixed global variable | ||
| #266 | Login Logout Menu | 72 | 7 | 20 | 20k+ | Input is not sanitized | ||
| #267 | POKY – Product Importer | 73 | 6 | 12 | 700 | Input is not validated | ||
| #268 | WP Revisions Limit | 74 | 16 | 14 | 800 | Missing Arg Domain | ||
| #269 | WPSSO WP Sitemaps XML with News, Image, and Video Sitemap | 75 | 60 | 24 | 400 | Missing Translators Comment | ||
| #270 | Aruba Fatturazione Elettronica | 76 | 34 | 700 | Missing nonce verification | |||
| #271 | ACF Galerie 4 | 77 | 16 | 23 | 2k+ | Text Domain Mismatch | ||
| #272 | Variation Price Display For WooCommerce | 77 | 87 | 16 | 900 | Text Domain Mismatch | ||
| #273 | WPA WooCommerce Product Gallery Slider Lite | 77 | 66 | 52 | 400 | Text Domain Mismatch | ||
| #274 | Wheel of Life: Coaching and Assessment Tool for Life Coach | 78 | 3 | 113 | 3k+ | Non-prefixed global variable | ||
| #275 | Flutterwave Payments | 79 | 8 | 39 | 700 | Non-prefixed global variable | ||
| #276 | Bulk Order Form for WooCommerce | 81 | 8 | 98 | 900 | Non-prefixed hook name | ||
| #277 | PDF Generator for WordPress | 83 | 10 | 198 | 1k+ | Non-prefixed global variable | ||
| #278 | Filterable Portfolio | 84 | 3 | 76 | 1k+ | Non-prefixed global variable | ||
| #279 | FontFlow Custom Icons for Elementor | 85 | 29 | 15 | 700 | Text Domain Mismatch | ||
| #280 | WC MyParcel Belgium | 86 | 340 | 79 | 600 | Text Domain Mismatch | ||
| #281 | WPS Bookings for WooCommerce | 88 | 26 | 249 | 4k+ | Non-prefixed global variable | ||
| #282 | File Uploads Addon for WooCommerce | 88 | 8 | 15 | 5k+ | Missing direct file access protection | ||
| #283 | Canvas | 89 | 19 | 112 | 10k+ | Non-prefixed global variable | ||
| #284 | Convert to Blocks | 89 | 2 | 11 | 2k+ | Non-prefixed hook name | ||
| #285 | WPGet API – Connect to any external REST API | 89 | 15 | 19 | 10k+ | Missing direct file access protection | ||
| #286 | Shipping Live Rates and Access Points for UPS for WooCommerce | 90 | 6 | 11 | 7k+ | Non-prefixed global variable | ||
| #287 | Include Mastodon Feed | 90 | 11 | 3 | 800 | Non-prefixed global variable | ||
| #288 | reCaptcha for WooCommerce | 91 | 116 | 9 | 400 | Text Domain Mismatch | ||
| #289 | Curator.io | 91 | 3 | 9 | 2k+ | Nonce verification recommended | ||
| #290 | MAS Static Content | 91 | 3 | 7 | 10k+ | Non-prefixed hook name | ||
| #291 | Themebeez Toolkit | 91 | 26 | 78 | 9k+ | Non-prefixed class | ||
| #292 | Cookie Consent – GDPR & CCPA Cookie Banner & Consent Manager | 92 | 16 | 10k+ | Direct Query | |||
| #293 | Menu Cart for WooCommerce | 92 | 102 | 16 | 80k+ | Text Domain Mismatch | ||
| #294 | Shipping Live Rates for DHL Express for WooCommerce | 93 | 4 | 11 | 600 | Non-prefixed global variable | ||
| #295 | Huurkalender WP | 93 | 3 | 7 | 800 | trademarked term | ||
| #296 | Add to Cart Redirect for WooCommerce | 93 | 4 | 5 | 400 | Nonce verification recommended | ||
| #297 | Carousel, Slider, Photo Gallery with Lightbox, Video Slider, by WP Carousel | 93 | 244 | 70k+ | Non-prefixed global variable | |||
| #298 | WP Menu Cart | 93 | 11 | 15 | 7k+ | Non-prefixed hook name | ||
| #299 | Real Testimonials – Testimonial Slider, Collect Customer Reviews and Video Testimonials | 94 | 293 | 40k+ | Non-prefixed global variable | |||
| #300 | MyParcel | 94 | 2 | 84 | 8k+ | Non-prefixed global variable |