WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedFunctionFound
Non-prefixed function
The plugin defines a function 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 function 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 | Sticky Header Effects for Elementor | 38 | 243 | 71 | 300k+ | Text Domain Mismatch | ||
| #2302 | Stock Market News | 38 | 71 | 11 | 500 | Output is not escaped | ||
| #2303 | Stock Market Overview | 38 | 86 | 14 | 1k+ | Output is not escaped | ||
| #2304 | Stock Market Ticker | 38 | 69 | 14 | 3k+ | Output is not escaped | ||
| #2305 | Stock Quotes List | 38 | 72 | 13 | 600 | Output is not escaped | ||
| #2306 | Subscriptions & Memberships for PayPal | 38 | 73 | 237 | 900 | Request data is not unslashed | ||
| #2307 | Swiper Js Slider | 38 | 125 | 35 | 400 | Output is not escaped | ||
| #2308 | Tag Manager – Header, Body And Footer | 38 | 97 | 319 | 20k+ | Non-prefixed global variable | ||
| #2309 | Product Compare for WooCommerce | 38 | 55 | 191 | 3k+ | Non-prefixed global variable | ||
| #2310 | Variation Swatches for WooCommerce | 38 | 45 | 65 | 2k+ | Output is not escaped | ||
| #2311 | Broadcast | 38 | 21 | 107 | 1k+ | Direct Query | ||
| #2312 | Accessibility Tools & Alt Text Finder | 38 | 36 | 56 | 3k+ | Text Domain Mismatch | ||
| #2313 | Trackserver | 38 | 17 | 356 | 400 | Input is not sanitized | ||
| #2314 | TRUENDO | GDPR Compliant Cookie Manager | 38 | 98 | 38 | 600 | Output is not escaped | ||
| #2315 | Twenty Eleven Theme Extensions | 38 | 35 | 30 | 3k+ | Output is not escaped | ||
| #2316 | Twiget Twitter Widget | 38 | 147 | 36 | 500 | Output is not escaped | ||
| #2317 | Twitter for WordPress | 38 | 47 | 24 | 1k+ | Output is not escaped | ||
| #2318 | TypePad emoji for TinyMCE | 38 | 100 | 24 | 8k+ | Text Domain Mismatch | ||
| #2319 | Termly – GDPR/CCPA Cookie Consent Banner | 38 | 54 | 92 | 80k+ | Non-prefixed global variable | ||
| #2320 | Ultimate Member Widgets for Elementor – Login Form, Register Form & User Directory | 38 | 17 | 110 | 400 | Non-prefixed namespace | ||
| #2321 | Unconfirmed | 38 | 20 | 79 | 1k+ | Nonce verification recommended | ||
| #2322 | VdoCipher: Secure Video Player and Hosting | 38 | 37 | 54 | 2k+ | Non-prefixed function | ||
| #2323 | FancyTube – Video Gallery, Video Slider, and Playlist Slider for YouTube | 38 | 358 | 34 | 1k+ | Text Domain Mismatch | ||
| #2324 | TWIPLA (Visitor Analytics IO) – Privacy-First Website Stats, Session Recordings, Heatmaps, Polls and Surveys | 38 | 71 | 49 | 900 | Output is not escaped | ||
| #2325 | W2S – Migrate WooCommerce to Shopify | 38 | 33 | 132 | 1k+ | Non-prefixed global variable | ||
| #2326 | SSLCommerz Payment Gateway | 38 | 21 | 132 | 2k+ | Non-prefixed global variable | ||
| #2327 | WDV About Me Widget | 38 | 150 | 8 | 900 | Output is not escaped | ||
| #2328 | White Label – WordPress Custom Admin, Custom Login Page, and Custom Dashboard | 38 | 205 | 31 | 10k+ | Output is not escaped | ||
| #2329 | Photo Reviews for WooCommerce | 38 | 26 | 222 | 10k+ | Request data is not unslashed | ||
| #2330 | Show Stock Status for WooCommerce | 38 | 30 | 19 | 1k+ | Output is not escaped | ||
| #2331 | Vietnam Checkout for WooCommerce | 38 | 93 | 137 | 10k+ | Nonce verification recommended | ||
| #2332 | WooSwipe WooCommerce Gallery | 38 | 88 | 82 | 3k+ | Non-prefixed global variable | ||
| #2333 | WP Hebrew Date | 38 | 102 | 13 | 600 | Output is not escaped | ||
| #2334 | WP-Ban | 38 | 99 | 108 | 8k+ | Unsafe printing function | ||
| #2335 | WP-CommentNavi | 38 | 68 | 46 | 700 | Output is not escaped | ||
| #2336 | WP Content Copy Protection with Color Design | 38 | 96 | 61 | 5k+ | Non Singular String Literal Domain | ||
| #2337 | WP Mail SMTP SendGrid Edition | 38 | 102 | 19 | 500 | Text Domain Mismatch | ||
| #2338 | WP Mailgun SMTP | 38 | 99 | 51 | 900 | Text Domain Mismatch | ||
| #2339 | WP Maintenance Mode & Site Under Construction | 38 | 72 | 57 | 3k+ | Output is not escaped | ||
| #2340 | WP Media Categories | 38 | 40 | 103 | 800 | Nonce verification recommended | ||
| #2341 | WP Redirects – Contact Form 7 | 38 | 50 | 71 | 400 | Unsafe printing function | ||
| #2342 | External Store for Shopify | 38 | 97 | 33 | 2k+ | Output is not escaped | ||
| #2343 | WP Terms Popup – Terms and Conditions and Privacy Policy WordPress Popups | 38 | 299 | 58 | 3k+ | Non Singular String Literal Domain | ||
| #2344 | WP Video Lightbox | 38 | 107 | 67 | 30k+ | Unsafe printing function | ||
| #2345 | WPC Product Options for WooCommerce | 38 | 57 | 182 | 4k+ | Non-prefixed global variable | ||
| #2346 | mb.YTPlayer for background videos | 38 | 80 | 29 | 1k+ | Unsafe printing function | ||
| #2347 | ZeroBounce Email Verification & Validation | 38 | 299 | 162 | 900 | Text Domain Mismatch | ||
| #2348 | Smart Custom 404 Error Page | 39 | 90 | 44 | 100k+ | Output is not escaped | ||
| #2349 | Accounting for WooCommerce | 39 | 87 | 115 | 500 | Unsafe printing function | ||
| #2350 | ACF: Google Font Selector | 39 | 57 | 45 | 3k+ | Output is not escaped |