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 |
|---|---|---|---|---|---|---|---|---|
| #2301 | Sprout Invoices – Client Invoicing & Estimates | 35 | 40 | 1,800 | 1k+ | Non-prefixed hook name | ||
| #2302 | Square Thumbnails | 35 | 43 | 317 | 800 | error log error log | ||
| #2303 | SrbTransLatin – Serbian Latinisation | 35 | 11 | 28 | 2k+ | Non-prefixed global variable | ||
| #2304 | SSL Insecure Content Fixer | 35 | 28 | 60 | 100k+ | Input is not sanitized | ||
| #2305 | Stars Testimonials — Responsive Reviews & Star Ratings | 35 | 29 | 253 | 1k+ | Non-prefixed global variable | ||
| #2306 | Steady for WordPress | 35 | 6 | 13 | 600 | Non-prefixed global variable | ||
| #2307 | Sticky Chat Widget – Floating Chat Icons, Contact Form, Call, Click to Chat, Email & Message Buttons | 35 | 33 | 293 | 10k+ | Non-prefixed global variable | ||
| #2308 | StoreEngine — Complete eCommerce Solution with Memberships, Licensing, Affiliates & More | 35 | 524 | 600 | Non-prefixed global variable | |||
| #2309 | String locator | 35 | 52 | 319 | 100k+ | Non-prefixed global variable | ||
| #2310 | Subscribe to Unlock Lite – Opt In Content Locker Plugin for WordPress | 35 | 106 | 145 | 500 | Non-prefixed global variable | ||
| #2311 | SumUp Payment Gateway For WooCommerce | 35 | 29 | 62 | 10k+ | Nonce verification recommended | ||
| #2312 | Svea Checkout for WooCommerce | 35 | 18 | 72 | 800 | Request data is not unslashed | ||
| #2313 | SweepPress: Website Cleanup and Optimization | 35 | 71 | 176 | 500 | Non-prefixed global variable | ||
| #2314 | ووسلام – همگام سازی ووکامرس و باسلام | 35 | 82 | 426 | 4k+ | Non-prefixed global variable | ||
| #2315 | Table for Divi | 35 | 5 | 2 | 2k+ | Hidden files included | ||
| #2316 | Tapfiliate | 35 | 35 | 49 | 400 | Nonce verification recommended | ||
| #2317 | Team Showcase – Responsive Team Members Grid, Slider & Carousel Plugin | 35 | 1,000 | 410 | 2k+ | Text Domain Mismatch | ||
| #2318 | Teamleader CRM Forms | 35 | 150 | 30 | 500 | Non Singular String Literal Domain | ||
| #2319 | Starter Sites & Templates by Neve | 35 | 28 | 88 | 100k+ | Non-prefixed hook name | ||
| #2320 | Advance Product Search- Voice & Ajax Search for WooCommerce | 35 | 125 | 92 | 10k+ | Text Domain Mismatch | ||
| #2321 | The Social Links | 35 | 16 | 29 | 2k+ | Non-prefixed global variable | ||
| #2322 | theMarketer – Email marketing, Newsletters, Automation & Loyalty for Woocommerce | 35 | 4 | 47 | 700 | Nonce verification recommended | ||
| #2323 | Theme Blvd Layout Builder | 35 | 207 | 169 | 2k+ | Output is not escaped | ||
| #2324 | ThemeRain Core | 35 | 69 | 61 | 1k+ | Text Domain Mismatch | ||
| #2325 | Themify Audio Dock | 35 | 22 | 9 | 900 | Non-prefixed global variable | ||
| #2326 | Themify Icons | 35 | 33 | 12 | 3k+ | Output is not escaped | ||
| #2327 | Themify Shortcodes | 35 | 36 | 16 | 7k+ | Output is not escaped | ||
| #2328 | Thumbnail Editor | 35 | 187 | 68 | 600 | wp function not compatible with requires wp | ||
| #2329 | Tockify Events Calendar | 35 | 35 | 12 | 2k+ | Output is not escaped | ||
| #2330 | Transcoder | 35 | 42 | 111 | 400 | Non-prefixed function | ||
| #2331 | TS Webfonts for さくらのレンタルサーバ | 35 | 183 | 100 | 30k+ | Missing Arg Domain | ||
| #2332 | Two Factor Authentication | 35 | 108 | 139 | 20k+ | Output is not escaped | ||
| #2333 | uCalc | 35 | 78 | 8 | 600 | Text Domain Mismatch | ||
| #2334 | Ultimate Post List | 35 | 186 | 84 | 2k+ | Missing Arg Domain | ||
| #2335 | Uptime Robot Plugin for WordPress | 35 | 398 | 324 | 600 | Text Domain Mismatch | ||
| #2336 | User Photo | 35 | 112 | 68 | 3k+ | Output is not escaped | ||
| #2337 | Embed videos and respect privacy | 35 | 6 | 11 | 2k+ | Non-prefixed global variable | ||
| #2338 | Video Gallery | 35 | 336 | 178 | 600 | Output is not escaped | ||
| #2339 | Void Elementor Post Grid Addon for Elementor Page builder | 35 | 189 | 93 | 3k+ | Text Domain Mismatch | ||
| #2340 | Voyapp Chile – Lugares y Cotizador de Despachos | 35 | 225 | 84 | 400 | Output is not escaped | ||
| #2341 | W4 Post List | 35 | 50 | 138 | 3k+ | Non-prefixed global variable | ||
| #2342 | Walls.io: Social Media Feed | 35 | 10 | 7 | 1k+ | Hidden files included | ||
| #2343 | WC Cancel Order | 35 | 52 | 122 | 5k+ | Non-prefixed hook name | ||
| #2344 | Deliver via Shipos for WooCommerce | 35 | 11 | 78 | 600 | Nonce verification recommended | ||
| #2345 | ShipStation Live Rates for WooCommerce | 35 | 402 | 73 | 900 | Non Singular String Literal Domain | ||
| #2346 | Spreadconnect | 35 | 128 | 126 | 700 | Output is not escaped | ||
| #2347 | WC Ukraine Shipping – Integration of Nova Poshta and Ukrposhta for WooCommerce | 35 | 504 | 164 | 7k+ | Text Domain Mismatch | ||
| #2348 | Converter for Media – Optimize images | Convert WebP & AVIF | 35 | 131 | 53 | 500k+ | curl curl setopt | ||
| #2349 | wePOS – Point Of Sale (POS) for WooCommerce & Dokan | 35 | 47 | 66 | 2k+ | Output is not escaped | ||
| #2350 | All-in-One Addons for Elementor – WidgetKit | 35 | 60 | 311 | 8k+ | Non-prefixed global variable |