WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedVariableFound
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 |
|---|---|---|---|---|---|---|---|---|
| #4101 | StoreAgent – WooCommerce AI Chatbot & AI Content Tools | 76 | 202 | 500 | Non-prefixed global variable | |||
| #4102 | Contact Form 7 Text CAPTCHA | 76 | 14 | 34 | 1k+ | Non-prefixed global variable | ||
| #4103 | The Future Is Now | 76 | 3 | 10 | 1k+ | Input is not sanitized | ||
| #4104 | Pelecard Gateway | 76 | 295 | 54 | 400 | Text Domain Mismatch | ||
| #4105 | Social Share For WooCommerce | 76 | 85 | 23 | 500 | Text Domain Mismatch | ||
| #4106 | WP AdCenter – Ad Manager & Adsense Ads | 76 | 5 | 71 | 1k+ | Direct Query | ||
| #4107 | WPC Free Gift Coupons for WooCommerce | 76 | 4 | 19 | 400 | Non-prefixed class | ||
| #4108 | Loyalty Points Rewards and Referral for WooCommerce – WPLoyalty | 76 | 2,207 | 760 | 3k+ | Text Domain Mismatch | ||
| #4109 | AffiliateWP – External Referral Links | 77 | 30 | 11 | 800 | Text Domain Mismatch | ||
| #4110 | Before After Image Comparison – Visual Comparison for Two Images | 77 | 18 | 16 | 3k+ | Text Domain Mismatch | ||
| #4111 | Better Search – Relevant search results for WordPress | 77 | 18 | 117 | 5k+ | Dynamic hook name | ||
| #4112 | CodeKit – Custom Codes Editor | 77 | 11 | 29 | 5k+ | Non-prefixed global variable | ||
| #4113 | Custom HTML Block Extension | 77 | 8 | 13 | 7k+ | Missing direct file access protection | ||
| #4114 | easypay Gateway Checkout for WooCommerce | 77 | 6 | 42 | 600 | Nonce verification recommended | ||
| #4115 | Ecomail | 77 | 7 | 13 | 1k+ | Non-prefixed global variable | ||
| #4116 | Ceylon Extra | 77 | 89 | 41 | 500 | Text Domain Mismatch | ||
| #4117 | ELEX Hide WooCommerce Shipping Methods | 77 | 83 | 54 | 1k+ | Text Domain Mismatch | ||
| #4118 | RSS Aggregator by Feedzy – Feed to Post, Autoblogging, News & YouTube Video Feeds Aggregator | 77 | 37 | 282 | 40k+ | Non-prefixed global variable | ||
| #4119 | GDPR | 77 | 39 | 121 | 10k+ | Non-prefixed global variable | ||
| #4120 | Embed Files from Google Drive | 77 | 4 | 35 | 5k+ | Nonce verification recommended | ||
| #4121 | Index WP Users For Speed | 77 | 10 | 35 | 1k+ | Non-prefixed global variable | ||
| #4122 | Mailster Mailgun Integration | 77 | 16 | 5 | 500 | Missing Translators Comment | ||
| #4123 | Master QR Code Generator – Fast & Easy QR Code Creator | 77 | 21 | 59 | 400 | Non-prefixed global variable | ||
| #4124 | Modern Footnotes | 77 | 18 | 6 | 6k+ | Output is not escaped | ||
| #4125 | PDF Smart Viewer for Elementor | 77 | 18 | 16 | 1k+ | Non-prefixed global variable | ||
| #4126 | Display custom fields in the frontend – Post and User Profile Fields | 77 | 17 | 18 | 600 | Non-prefixed global variable | ||
| #4127 | SureRank SEO – Smart Assistant with Meta Tags, Social Preview, XML Sitemap, and Schema | 77 | 58 | 95 | 300k+ | Non-prefixed hook name | ||
| #4128 | Tagembed Social Feeds Widget | 77 | 21 | 137 | 10k+ | Non-prefixed function | ||
| #4129 | Taggbox – Free Social Media Widgets, Review Badges & Shoppable UGC | 77 | 23 | 113 | 1k+ | Direct Query | ||
| #4130 | Template Kit – Import | 77 | 41 | 60 | 400k+ | Non-prefixed global variable | ||
| #4131 | Toggle wpautop | 77 | 4 | 15 | 9k+ | trademarked term | ||
| #4132 | Lorem Ipsum Generator | 77 | 7 | 9 | 500 | Missing direct file access protection | ||
| #4133 | WPA WooCommerce Product Gallery Slider Lite | 77 | 66 | 52 | 400 | Text Domain Mismatch | ||
| #4134 | WPC Show Single Variations for WooCommerce | 77 | 1 | 26 | 1k+ | Nonce verification recommended | ||
| #4135 | wpsection | 77 | 131 | 554 | 3k+ | Non-prefixed global variable | ||
| #4136 | X-Currency – The Ultimate WooCommerce currency switcher for a smoother shopping experience | 77 | 17 | 77 | 1k+ | Non-prefixed global variable | ||
| #4137 | Accordion Blocks | 78 | 9 | 3 | 10k+ | Unsafe printing function | ||
| #4138 | Support For Icomoon with Advanced Custom Fields | 78 | 15 | 6 | 1k+ | Output is not escaped | ||
| #4139 | ELEX WooCommerce Address Validation & Google Address Autocomplete Plugin | 78 | 73 | 40 | 700 | Missing Arg Domain | ||
| #4140 | AffiliateWP – Affiliate QR Codes | 78 | 32 | 8 | 1k+ | Text Domain Mismatch | ||
| #4141 | AffiliateWP – Allow Own Referrals | 78 | 37 | 10 | 500 | Text Domain Mismatch | ||
| #4142 | Instant AI Image Generator – Create & Import Images | 78 | 23 | 1k+ | Non-prefixed constant | |||
| #4143 | Animated Text Block – Add Typing and Looping Text Effects | 78 | 5 | 25 | 4k+ | Non-prefixed class | ||
| #4144 | Claspo – Popups, Spin the Wheel & Email Capture | 78 | 107 | 16 | 1k+ | wp function not compatible with requires wp | ||
| #4145 | Player for SoundCloud – Embed and Play Audio Tracks | 78 | 17 | 24 | 1k+ | Text Domain Mismatch | ||
| #4146 | Frontend Product Editor for WooCommerce | 78 | 76 | 31 | 400 | Text Domain Mismatch | ||
| #4147 | Layouts for Elementor | 78 | 27 | 1k+ | Non-prefixed global variable | |||
| #4148 | Layouts for WPBakery | 78 | 28 | 3k+ | Non-prefixed global variable | |||
| #4149 | Maintenance Notice | 78 | 26 | 71 | 800 | Non-prefixed global variable | ||
| #4150 | Coming Soon & Maintenance Mode Page & Under Construction | 78 | 35 | 67 | 10k+ | Non-prefixed global variable |