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 |
|---|---|---|---|---|---|---|---|---|
| #2701 | WP Image Markers – Easy Hotspot Solution | 37 | 179 | 66 | 700 | Text Domain Mismatch | ||
| #2702 | WP Flow Plus | 37 | 175 | 146 | 800 | Output is not escaped | ||
| #2703 | WP Plugin Info Card | 37 | 53 | 376 | 500 | Nonce verification recommended | ||
| #2704 | WP Post Signature | 37 | 90 | 13 | 1k+ | Unsafe printing function | ||
| #2705 | WPO365 | MICROSOFT 365 GRAPH MAILER | 37 | 112 | 83 | 10k+ | Text Domain Mismatch | ||
| #2706 | WP VR – 360 Panorama and Virtual Tour Builder | 37 | 3 | 275 | 10k+ | Non-prefixed hook name | ||
| #2707 | Yada Wiki | 37 | 207 | 45 | 2k+ | Text Domain Mismatch | ||
| #2708 | Zakeke Interactive Product Designer for WooCommerce | 37 | 186 | 178 | 2k+ | Nonce verification recommended | ||
| #2709 | Zoho Marketing Automation | 37 | 24 | 194 | 1k+ | Non-prefixed global variable | ||
| #2710 | Zendesk Chat | 37 | 44 | 67 | 10k+ | Output is not escaped | ||
| #2711 | Accessibility | 38 | 66 | 61 | 1k+ | Non-prefixed global variable | ||
| #2712 | ACF-VC Integrator | 38 | 190 | 91 | 3k+ | Output is not escaped | ||
| #2713 | Parallax Scroll by adamrob.co.uk | 38 | 102 | 51 | 1k+ | Output is not escaped | ||
| #2714 | Add Customer for WooCommerce | 38 | 229 | 153 | 1k+ | Text Domain Mismatch | ||
| #2715 | Admin Bar Editor – Toolbar Customization with User Role based access & Custom menus | 38 | 56 | 46 | 3k+ | Output is not escaped | ||
| #2716 | Admin Bar & Dashboard Access Control | 38 | 94 | 37 | 3k+ | Text Domain Mismatch | ||
| #2717 | Admin Tools | 38 | 189 | 10 | 3k+ | Unsafe printing function | ||
| #2718 | AdRoll for WooCommerce Stores | 38 | 40 | 25 | 600 | Output is not escaped | ||
| #2719 | AWCA – The Great Analytics Insights for Your eStore | 38 | 238 | 143 | 2k+ | Output is not escaped | ||
| #2720 | Advanced 301 and 302 Redirect | 38 | 81 | 339 | 1k+ | Non-prefixed global variable | ||
| #2721 | Advanced Media Offloader | 38 | 57 | 93 | 5k+ | error log error log | ||
| #2722 | Afterpay Gateway for WooCommerce | 38 | 183 | 62 | 10k+ | Text Domain Mismatch | ||
| #2723 | Anant Sites — Elementor & Gutenberg Readymade Template Library Free & Pro Templates | 38 | 20 | 156 | 1k+ | Non-prefixed global variable | ||
| #2724 | Announcement Bar | 38 | 192 | 61 | 3k+ | Non Singular String Literal Domain | ||
| #2725 | Any Mobile Theme Switcher | 38 | 69 | 59 | 20k+ | Output is not escaped | ||
| #2726 | Aplazame | 38 | 34 | 39 | 600 | Non-prefixed global variable | ||
| #2727 | Attachments | 38 | 238 | 66 | 8k+ | Unsafe printing function | ||
| #2728 | Author Category | 38 | 85 | 25 | 4k+ | Output is not escaped | ||
| #2729 | Auto Prune Posts | 38 | 54 | 57 | 1k+ | Output is not escaped | ||
| #2730 | bbPress Login Register Links On Forum Topic Pages | 38 | 142 | 36 | 600 | Text Domain Mismatch | ||
| #2731 | Beauty Form Styler for Gravity Forms | 38 | 70 | 93 | 600 | Output is not escaped | ||
| #2732 | Before After Image Comparison Slider for Elementor | 38 | 63 | 36 | 10k+ | Text Domain Mismatch | ||
| #2733 | Bible Verse of the Day | 38 | 378 | 23 | 3k+ | Unsafe printing function | ||
| #2734 | SoftTech-IT bKash, Rocket, Nagad | 38 | 164 | 81 | 6k+ | Text Domain Mismatch | ||
| #2735 | Blogger Importer | 38 | 44 | 39 | 50k+ | Output is not escaped | ||
| #2736 | Cache Warmer | 38 | 32 | 219 | 1k+ | Interpolated SQL is not prepared | ||
| #2737 | Category Posts Widget | 38 | 153 | 26 | 40k+ | Output is not escaped | ||
| #2738 | CC Child Pages | 38 | 63 | 152 | 9k+ | Non-prefixed global variable | ||
| #2739 | Cecabank WooCommerce Plugin | 38 | 63 | 32 | 3k+ | Text Domain Mismatch | ||
| #2740 | Database for Contact Form 7 | 38 | 34 | 128 | 7k+ | Missing nonce verification | ||
| #2741 | WPAppsDev – CF7 Form Submission Limit | 38 | 104 | 33 | 1k+ | Text Domain Mismatch | ||
| #2742 | Contact Form 7 – Post Fields | 38 | 167 | 25 | 3k+ | Text Domain Mismatch | ||
| #2743 | CF7 to Webhook | 38 | 102 | 72 | 30k+ | Unsafe printing function | ||
| #2744 | Classic Editor Plus – WordPress Classic Editor plugin by Felix | 38 | 83 | 42 | 500 | Text Domain Mismatch | ||
| #2745 | Clever Mega Menu for Elementor | 38 | 835 | 44 | 1k+ | Output is not escaped | ||
| #2746 | Chatbot for WordPress by Collect.chat ⚡️ | 38 | 58 | 36 | 6k+ | Unsafe printing function | ||
| #2747 | Colorlib 404 Customizer | 38 | 65 | 15 | 6k+ | Missing direct file access protection | ||
| #2748 | Country Code Selector | 38 | 91 | 20 | 1k+ | Unsafe printing function | ||
| #2749 | country-redirect | 38 | 58 | 19 | 400 | Text Domain Mismatch | ||
| #2750 | Crop-Thumbnails | 38 | 33 | 27 | 40k+ | Missing direct file access protection |