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 |
|---|---|---|---|---|---|---|---|---|
| #1901 | Audit Trail | 34 | 90 | 107 | 10k+ | Unsafe printing function | ||
| #1902 | Auto Listings – Car Listings & Car Dealership Plugin for WordPress | 34 | 80 | 318 | 2k+ | Non-prefixed global variable | ||
| #1903 | AyeCode Connect | 34 | 178 | 253 | 10k+ | Nonce verification recommended | ||
| #1904 | Beeketing for WooCommerce – Marketing Automation to Boost Sales | 34 | 113 | 123 | 600 | SQL query is not prepared | ||
| #1905 | Blog-in-Blog | 34 | 64 | 93 | 800 | Non-prefixed function | ||
| #1906 | BoldGrid Easy SEO – Simple and Effective SEO | 34 | 149 | 104 | 40k+ | Text Domain Mismatch | ||
| #1907 | Buckets | 34 | 68 | 76 | 500 | Output is not escaped | ||
| #1908 | BuddyPress & BuddyBoss Member Profile Forms | 34 | 154 | 121 | 400 | Text Domain Mismatch | ||
| #1909 | SMS Abandoned Cart Recovery ✦ CartBoss | 34 | 67 | 72 | 400 | SQL query is not prepared | ||
| #1910 | Checkout Field Editor for WooCommerce – Checkout Manager | 34 | 122 | 64 | 20k+ | Text Domain Mismatch | ||
| #1911 | Clean Testimonials | 34 | 127 | 87 | 400 | Output is not escaped | ||
| #1912 | CM Search And Replace – Optimize content edits with a powerful search and replace tool | 34 | 286 | 111 | 2k+ | Output is not escaped | ||
| #1913 | Contact Form 7 – PayPal & Stripe Add-on | 34 | 93 | 233 | 7k+ | Exception output is not escaped | ||
| #1914 | Custom Login Page by SeedProd | 34 | 330 | 125 | 500 | Output is not escaped | ||
| #1915 | Custom Post Type Attachment | 34 | 153 | 49 | 800 | wp function not compatible with requires wp | ||
| #1916 | Custom Sidebars – Dynamic Sidebar Classic Widget Area Manager | 34 | 32 | 307 | 100k+ | Non-prefixed global variable | ||
| #1917 | Datafeedr API | 34 | 307 | 48 | 6k+ | Output is not escaped | ||
| #1918 | DD Last Viewed | 34 | 193 | 132 | 500 | Output is not escaped | ||
| #1919 | Debug Log Manager Tool | 34 | 44 | 143 | 3k+ | Nonce verification recommended | ||
| #1920 | Document Library Lite | 34 | 149 | 85 | 4k+ | Text Domain Mismatch | ||
| #1921 | Easy Social Sharing | 34 | 16 | 240 | 1k+ | Non-prefixed global variable | ||
| #1922 | Edit Flow | 34 | 103 | 227 | 4k+ | Non-prefixed hook name | ||
| #1923 | ECS – Ele Custom Skin for Elementor | 34 | 99 | 205 | 100k+ | Text Domain Mismatch | ||
| #1924 | Enhanced Text Widget | 34 | 101 | 58 | 30k+ | Output is not escaped | ||
| #1925 | Essential Classy Addons for Elementor – 150+ Widgets, Templates & Performance Tools | 34 | 283 | 186 | 500 | Output is not escaped | ||
| #1926 | Event Calendar Newsletter | 34 | 96 | 167 | 600 | Non-prefixed hook name | ||
| #1927 | Event Post | 34 | 329 | 99 | 1k+ | Output is not escaped | ||
| #1928 | Evento | 34 | 583 | 60 | 1k+ | Text Domain Mismatch | ||
| #1929 | Export Customers Data | 34 | 109 | 49 | 500 | Text Domain Mismatch | ||
| #1930 | Social LikeBox & Feed | 34 | 393 | 141 | 10k+ | Non Singular String Literal Domain | ||
| #1931 | Profile Box Shortcode And Widget | 34 | 488 | 138 | 1k+ | Output is not escaped | ||
| #1932 | Fancy Comments WordPress | 34 | 359 | 39 | 2k+ | Unsafe printing function | ||
| #1933 | Featured Video Plus | 34 | 99 | 105 | 10k+ | Non-prefixed global variable | ||
| #1934 | Flash Toolkit | 34 | 158 | 242 | 10k+ | Non-prefixed global variable | ||
| #1935 | Weight Based Shipping Table Rate for WooCommerce – Flexible Shipping | 34 | 124 | 156 | 100k+ | Nonce verification recommended | ||
| #1936 | Floating Side Tab | 34 | 94 | 153 | 600 | Non-prefixed global variable | ||
| #1937 | FluentAuth – The Ultimate Authorization & Security Plugin for WordPress | 34 | 44 | 229 | 10k+ | Nonce verification recommended | ||
| #1938 | Forms: 3rd-Party Integration | 34 | 234 | 112 | 5k+ | Output is not escaped | ||
| #1939 | Garden Gnome Package | 34 | 116 | 51 | 4k+ | Text Domain Mismatch | ||
| #1940 | Geliver Akıllı Kargo Pazaryeri | 34 | 49 | 247 | 400 | Non-prefixed global variable | ||
| #1941 | Geolocation IP Detection | 34 | 227 | 167 | 20k+ | Output is not escaped | ||
| #1942 | Gitium | 34 | 149 | 57 | 400 | Output is not escaped | ||
| #1943 | APG Google Video Sitemap Feed | 34 | 96 | 45 | 800 | Output is not escaped | ||
| #1944 | Gratisfaction- Loyalty, Rewards , Referral, Birthday and Giveaway Program | 34 | 131 | 352 | 600 | Missing nonce verification | ||
| #1945 | Signature Add-On for Gravity Forms | 34 | 161 | 48 | 1k+ | Text Domain Mismatch | ||
| #1946 | Greenshift – animation and page builder blocks | 34 | 33 | 272 | 70k+ | Non-prefixed global variable | ||
| #1947 | Herzog Dupont for YOOtheme Pro | 34 | 477 | 233 | 4k+ | Output is not escaped | ||
| #1948 | Hide Price Until Login | 34 | 187 | 115 | 2k+ | Non Singular String Literal Domain | ||
| #1949 | Hitsteps Web Analytics | 34 | 370 | 313 | 800 | Output is not escaped | ||
| #1950 | HollerBox — Fast & Effective Popups & Lead-Generation | 34 | 78 | 92 | 2k+ | Output is not escaped |