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 |
|---|---|---|---|---|---|---|---|---|
| #2751 | Carbon Copy | 41 | 64 | 89 | 3k+ | Text Domain Mismatch | ||
| #2752 | Čeština: zalomení řádků | 41 | 86 | 8 | 6k+ | Text Domain Mismatch | ||
| #2753 | Conditional Fields for Contact Form 7 | 41 | 106 | 53 | 100k+ | Output is not escaped | ||
| #2754 | CF7 Invisible reCAPTCHA | 41 | 19 | 52 | 7k+ | Request data is not unslashed | ||
| #2755 | Collapsed Archives | 41 | 54 | 4 | 1k+ | Output is not escaped | ||
| #2756 | Colorful Categories | 41 | 20 | 20 | 2k+ | Output is not escaped | ||
| #2757 | Controlled Admin Access | 41 | 22 | 40 | 10k+ | Nonce verification recommended | ||
| #2758 | Cookie Notice & Consent | 41 | 101 | 29 | 1k+ | Output is not escaped | ||
| #2759 | Database for CF7 | 41 | 37 | 32 | 2k+ | Text Domain Mismatch | ||
| #2760 | Hash Form – Drag & Drop Form Builder | 41 | 9 | 275 | 3k+ | Non-prefixed global variable | ||
| #2761 | Hide WP Admin Login | 41 | 23 | 39 | 500 | Nonce verification recommended | ||
| #2762 | Infinite Ajax Scrolling Lite For Woocommerce | 41 | 33 | 28 | 500 | Output is not escaped | ||
| #2763 | Inpost Paczkomaty | 41 | 35 | 68 | 8k+ | Text Domain Mismatch | ||
| #2764 | Jellyfish Counter Widget | 41 | 174 | 5 | 1k+ | Output is not escaped | ||
| #2765 | Social Sharing Plugin – Kiwi | 41 | 23 | 80 | 4k+ | Non-prefixed global variable | ||
| #2766 | Magic Liquidizer Responsive Table | 41 | 114 | 38 | 6k+ | Text Domain Mismatch | ||
| #2767 | MaxSlider | 41 | 21 | 45 | 7k+ | Output is not escaped | ||
| #2768 | Media Grid | 41 | 42 | 44 | 2k+ | Missing Arg Domain | ||
| #2769 | Mihdan: Yandex Turbo Feed | 41 | 65 | 39 | 1k+ | Output is not escaped | ||
| #2770 | Mobile Contact Bar | 41 | 94 | 36 | 10k+ | Unsafe printing function | ||
| #2771 | Omnibus — show the lowest price | 41 | 35 | 37 | 10k+ | Output is not escaped | ||
| #2772 | Pages In Widgets | 41 | 131 | 6 | 3k+ | Output is not escaped | ||
| #2773 | Personalize Login | 41 | 47 | 84 | 500 | Nonce verification recommended | ||
| #2774 | Web Accessibility (formally known as Ally) – WCAG Scanning, Guided Fixes, Usability Widget | 41 | 47 | 38 | 500k+ | Output is not escaped | ||
| #2775 | Smart Post – Post Grid, Post Carousel, Post Slider Gutenberg Blocks for Blog & News | 41 | 537 | 20k+ | Non-prefixed global variable | |||
| #2776 | Posts Viewed Recently | 41 | 58 | 16 | 700 | Output is not escaped | ||
| #2777 | Product Expiry for WooCommerce | 41 | 31 | 85 | 2k+ | Request data is not unslashed | ||
| #2778 | Variation Swatches for WooCommerce | 41 | 29 | 126 | 9k+ | Missing nonce verification | ||
| #2779 | Responsive Lightbox | 41 | 68 | 10 | 10k+ | Output is not escaped | ||
| #2780 | Send link to friend | 41 | 81 | 47 | 400 | Output is not escaped | ||
| #2781 | Simple Page Access Restriction | 41 | 66 | 51 | 6k+ | Unsafe printing function | ||
| #2782 | SiteSEO – SEO Simplified | 41 | 20 | 110 | 500k+ | Nonce verification recommended | ||
| #2783 | Squeeze – Image Optimization & Compression, WEBP Conversion | 41 | 20 | 70 | 2k+ | Nonce verification recommended | ||
| #2784 | Sticky Posts – Switch | 41 | 84 | 5 | 6k+ | Output is not escaped | ||
| #2785 | Feedback Company | 41 | 63 | 36 | 800 | Output is not escaped | ||
| #2786 | Unbloater | 41 | 57 | 18 | 5k+ | Output is not escaped | ||
| #2787 | Visibility Logic for Elementor | 41 | 27 | 43 | 30k+ | Output is not escaped | ||
| #2788 | Waka Bulk Page | 41 | 52 | 16 | 1k+ | Unsafe printing function | ||
| #2789 | Abandoned Cart Recovery for WooCommerce | 41 | 20 | 202 | 4k+ | Request data is not unslashed | ||
| #2790 | Checkout Field Editor (Checkout Manager) for WooCommerce | 41 | 9 | 88 | 400k+ | Nonce verification recommended | ||
| #2791 | Advanced Custom Stock Status | 41 | 84 | 33 | 9k+ | Output is not escaped | ||
| #2792 | WPC Product Bundles for WooCommerce | 41 | 21 | 93 | 30k+ | Missing nonce verification | ||
| #2793 | Quick View For WooCommerce | 41 | 44 | 44 | 1k+ | Output is not escaped | ||
| #2794 | WooCommerce Colors | 41 | 63 | 28 | 10k+ | Output is not escaped | ||
| #2795 | Pay for Payment for WooCommerce | 41 | 29 | 67 | 10k+ | Missing nonce verification | ||
| #2796 | WP Crontrol | 41 | 20 | 91 | 300k+ | Nonce verification recommended | ||
| #2797 | WP Extended Search | 41 | 159 | 37 | 20k+ | Output is not escaped | ||
| #2798 | Regions for WP Job Manager | 41 | 29 | 55 | 7k+ | Nonce verification recommended | ||
| #2799 | WPC Composite Products for WooCommerce | 41 | 11 | 73 | 9k+ | Missing nonce verification | ||
| #2800 | Export WooCommerce Orders, Products, Customers & Coupons to Google Sheets | 41 | 45 | 35 | 700 | Output is not escaped |