WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedHooknameFound
Non-prefixed hook name
The plugin defines a hook name 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 hook name 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 |
|---|---|---|---|---|---|---|---|---|
| #2801 | Export WooCommerce Orders, Products, Customers & Coupons to Google Sheets | 41 | 45 | 35 | 700 | Output is not escaped | ||
| #2802 | Pricing Table – Responsive & Easy | 42 | 117 | 148 | 3k+ | Non-prefixed global variable | ||
| #2803 | Add to Home Screen & Progressive Web App | 42 | 23 | 68 | 1k+ | Request data is not unslashed | ||
| #2804 | Admin Options Pages | 42 | 3 | 284 | 500 | Nonce verification recommended | ||
| #2805 | Post Grid Master — Post Grids & AJAX Filters | 42 | 44 | 115 | 1k+ | Non-prefixed global variable | ||
| #2806 | AweSplash – Just Splash Page | 42 | 39 | 34 | 500 | Output is not escaped | ||
| #2807 | Block Temporary Email | 42 | 33 | 13 | 500 | Unsafe printing function | ||
| #2808 | Comment Blacklist Updater | 42 | 45 | 15 | 1k+ | Output is not escaped | ||
| #2809 | Comment Reply Email | 42 | 21 | 23 | 500 | Unsafe printing function | ||
| #2810 | Custom Admin Page by BestWebSoft – Configurable WordPress Dashboard Pages Plugin | 42 | 472 | 181 | 400 | Text Domain Mismatch | ||
| #2811 | Custom Fields for Gutenberg | 42 | 24 | 24 | 1k+ | Output is not escaped | ||
| #2812 | Custom Login | 42 | 36 | 116 | 10k+ | Non-prefixed global variable | ||
| #2813 | Custom Taxonomy Order | 42 | 20 | 56 | 50k+ | Output is not escaped | ||
| #2814 | Dashboard Notes | 42 | 27 | 34 | 600 | Missing Arg Domain | ||
| #2815 | Disable User Login | 42 | 25 | 19 | 5k+ | Unsafe printing function | ||
| #2816 | Easy Video Player | 42 | 20 | 20 | 20k+ | Output is not escaped | ||
| #2817 | Exit Popup | 42 | 51 | 5 | 1k+ | Output is not escaped | ||
| #2818 | FormCraft – Form Builder | 42 | 186 | 156 | 2k+ | Text Domain Mismatch | ||
| #2819 | GA Google Analytics – Connect Google Analytics to WordPress | 42 | 46 | 30 | 400k+ | Output is not escaped | ||
| #2820 | hCaptcha for WP | 42 | 115 | 18 | 70k+ | Exception output is not escaped | ||
| #2821 | Hide Cart Functions | 42 | 12 | 50 | 3k+ | Nonce verification recommended | ||
| #2822 | LIQUID BLOCKS – Slider, Carousel, Accordion | 42 | 50 | 31 | 4k+ | Unsafe printing function | ||
| #2823 | Login No Captcha reCAPTCHA | 42 | 45 | 24 | 60k+ | Unsafe printing function | ||
| #2824 | Manage User Columns | 42 | 15 | 27 | 1k+ | Request data is not unslashed | ||
| #2825 | Nav Menu Collapse | 42 | 17 | 39 | 3k+ | Missing nonce verification | ||
| #2826 | PAYDUNYA WOOCOMMERCE PAR | 42 | 54 | 32 | 600 | Text Domain Mismatch | ||
| #2827 | WP Email Log – PostBox | 42 | 2 | 81 | 700 | Nonce verification recommended | ||
| #2828 | Product Price History for WooCommerce | 42 | 101 | 800 | Nonce verification recommended | |||
| #2829 | PuSHPress | 42 | 11 | 65 | 20k+ | Missing nonce verification | ||
| #2830 | reCAPTCHA for WooCommerce | 42 | 80 | 31 | 40k+ | Output is not escaped | ||
| #2831 | Reusable Blocks Extended | 42 | 38 | 15 | 20k+ | Output is not escaped | ||
| #2832 | Secure Passkeys | 42 | 146 | 76 | 1k+ | Exception output is not escaped | ||
| #2833 | Simple Side Tab | 42 | 29 | 17 | 10k+ | Unsafe printing function | ||
| #2834 | SMTP Mailer | 42 | 51 | 49 | 70k+ | Unsafe printing function | ||
| #2835 | Starter Sites | 42 | 62 | 25 | 1k+ | Output is not escaped | ||
| #2836 | ThemeZee Widget Bundle | 42 | 211 | 58 | 5k+ | Output is not escaped | ||
| #2837 | Two Factor | 42 | 18 | 70 | 100k+ | Nonce verification recommended | ||
| #2838 | Ultimate Coming Soon Page, Maintenance Mode & Under Construction – Gutenberg Block Builder & Landing Page | 42 | 15 | 89 | 9k+ | Non-prefixed global variable | ||
| #2839 | Usermaven | 42 | 36 | 77 | 1k+ | Request data is not unslashed | ||
| #2840 | Vast Demo Import | 42 | 180 | 113 | 600 | Text Domain Mismatch | ||
| #2841 | WPC Order Notes for WooCommerce | 42 | 24 | 41 | 900 | Output is not escaped | ||
| #2842 | WP Before After Image Slider – Interactive Image and Video Comparison Plugin for WordPress | 42 | 112 | 17 | 1k+ | Text Domain Mismatch | ||
| #2843 | Eventin – Event Calendar, Event Registration, Tickets & Booking (AI Powered) | 42 | 2,583 | 1,823 | 10k+ | Text Domain Mismatch | ||
| #2844 | WP Post Redirect | 42 | 29 | 17 | 3k+ | Unsafe printing function | ||
| #2845 | AMP | 43 | 63 | 362 | 400k+ | Non-prefixed hook name | ||
| #2846 | Charla Live Chat | 43 | 33 | 13 | 500 | Output is not escaped | ||
| #2847 | Custom Menu | 43 | 83 | 11 | 400 | wp function not compatible with requires wp | ||
| #2848 | Customize Snapshots | 43 | 9 | 42 | 500 | Nonce verification recommended | ||
| #2849 | Database Addon For WPForms ( wpforms entries ) – WPFormsDB | 43 | 17 | 53 | 20k+ | Nonce verification recommended | ||
| #2850 | Directorist – WPML Integration | 43 | 10 | 134 | 400 | Non-prefixed hook name |