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 |
|---|---|---|---|---|---|---|---|---|
| #2751 | SX User Name Security | 46 | 42 | 9 | 900 | Output is not escaped | ||
| #2752 | WEN Logo Slider | 46 | 6 | 46 | 1k+ | Non-prefixed global variable | ||
| #2753 | WP Lightbox 2 | 46 | 52 | 18 | 30k+ | Text Domain Mismatch | ||
| #2754 | Zoho Mail for WordPress | 46 | 29 | 48 | 20k+ | Request data is not unslashed | ||
| #2755 | 404 Image Redirection (Replace Broken Images) | 47 | 118 | 85 | 600 | Text Domain Mismatch | ||
| #2756 | DPO Pay for WooCommerce | 47 | 28 | 41 | 1k+ | Non Singular String Literal Text | ||
| #2757 | FSM Custom Featured Image Caption | 47 | 26 | 27 | 5k+ | Output is not escaped | ||
| #2758 | Granular Controls For Elementor | 47 | 56 | 4 | 10k+ | Output is not escaped | ||
| #2759 | KCSG Kartra Pages | 47 | 30 | 16 | 500 | Heredoc Output Not Escaped | ||
| #2760 | Legal Pages β Privacy Policy, Terms & Conditions, GDPR, CCPA, and Cookie Notice Generator | 47 | 44 | 83 | 10k+ | Missing direct file access protection | ||
| #2761 | Product Categories/Tags Bottom Description for WooCommerce | 47 | 60 | 23 | 3k+ | Text Domain Mismatch | ||
| #2762 | Real Media Library: Media Library Folder & File Manager | 47 | 1 | 365 | 100k+ | Direct Query | ||
| #2763 | Restore PayPal Standard for WooCommerce | 47 | 19 | 53 | 3k+ | Nonce verification recommended | ||
| #2764 | SportsPress for Baseball | 47 | 113 | 34 | 900 | Text Domain Mismatch | ||
| #2765 | Store Locator for WordPressπ | 47 | 51 | 21 | 1k+ | Missing Arg Domain | ||
| #2766 | Tabby Checkout | 47 | 33 | 46 | 4k+ | Non-prefixed class | ||
| #2767 | The Tribal Plugin | 47 | 43 | 62 | 700 | Non-prefixed function | ||
| #2768 | Better Usability for WooCommerce | 47 | 29 | 91 | 800 | Non-prefixed hook name | ||
| #2769 | iControlWP | 47 | 45 | 59 | 1k+ | Missing direct file access protection | ||
| #2770 | 3CX Free Live Chat, Calls & Messaging | 47 | 24 | 16 | 100k+ | Output is not escaped | ||
| #2771 | Compress, Resize & Lazy Load Images β WPvivid Image Optimization | 47 | 107 | 58 | 10k+ | Missing direct file access protection | ||
| #2772 | XML Sitemap & Google News | 47 | 270 | 224 | 100k+ | Non-prefixed global variable | ||
| #2773 | Add-on WooCommerce β MailPoet 3 | 48 | 30 | 21 | 600 | Output is not escaped | ||
| #2774 | Ansar Import β One Click Starter Sites β for Elementor & Themes | 48 | 27 | 116 | 10k+ | Non-prefixed global variable | ||
| #2775 | Contact Form 7 BWP reCAPTCHA Extension | 48 | 92 | 10 | 400 | Non Singular String Literal Domain | ||
| #2776 | Convertful β Your Ultimate On-Site Conversion Tool | 48 | 15 | 34 | 3k+ | wp function not compatible with requires wp | ||
| #2777 | Jetpack Social | 48 | 829 | 254 | 30k+ | Text Domain Mismatch | ||
| #2778 | JW Player for WordPress | 48 | 289 | 80 | 1k+ | Text Domain Mismatch | ||
| #2779 | MWW Disclaimer Buttons | 48 | 21 | 16 | 400 | Output is not escaped | ||
| #2780 | Raw HTML Snippets | 48 | 14 | 36 | 2k+ | Input is not sanitized | ||
| #2781 | FlexStock β Product Stock Sync with Google Sheets for WooCommerce | 48 | 241 | 700 | Direct Query | |||
| #2782 | ThemeFarmer Companion | 48 | 54 | 51 | 2k+ | Missing Version | ||
| #2783 | Virtuaria PagBank / PagSeguro for WooCommerce | 48 | 12 | 160 | 1k+ | Non-prefixed global variable | ||
| #2784 | Instamojo for WooCommerce | 48 | 72 | 44 | 5k+ | Text Domain Mismatch | ||
| #2785 | WP Google Search | 48 | 45 | 17 | 5k+ | Output is not escaped | ||
| #2786 | wp-Monalisa | 48 | 56 | 94 | 700 | Direct Query | ||
| #2787 | WP Remote Users Sync | 48 | 355 | 117 | 6k+ | Text Domain Mismatch | ||
| #2788 | Batcache | 49 | 12 | 53 | 700 | Input is not sanitized | ||
| #2789 | Analytics by BestWebSoft β Google Analytics Dashboard and Statistic Plugin for WordPress | 49 | 478 | 176 | 1k+ | Text Domain Mismatch | ||
| #2790 | CallPage β Callback Widget | 49 | 41 | 17 | 1k+ | Non Singular String Literal Domain | ||
| #2791 | Dashboard quick links widget | 49 | 22 | 16 | 700 | Output is not escaped | ||
| #2792 | Ecommerce Fabrick | 49 | 4 | 135 | 1k+ | Nonce verification recommended | ||
| #2793 | Web Icons | 49 | 51 | 10 | 1k+ | Output is not escaped | ||
| #2794 | Registered Users Only | 49 | 14 | 14 | 2k+ | Unsafe printing function | ||
| #2795 | Search in Place | 49 | 74 | 57 | 3k+ | wp function not compatible with requires wp | ||
| #2796 | SKT Themes Demo Import | 49 | 218 | 104 | 4k+ | Text Domain Mismatch | ||
| #2797 | Songkick Concerts and Festivals | 49 | 9 | 48 | 500 | Input is not sanitized | ||
| #2798 | SpinupWP | 49 | 43 | 38 | 30k+ | Non-prefixed function | ||
| #2799 | Video Background | 49 | 35 | 26 | 9k+ | Unsafe printing function | ||
| #2800 | PDF Invoices & Packing Slips for WooCommerce β Challan | 49 | 56 | 151 | 4k+ | Non-prefixed global variable |