WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedClassFound
Non-prefixed class
The plugin defines a class 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 class 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 |
|---|---|---|---|---|---|---|---|---|
| #2851 | Image Hotspot With Tooltip For WPBakery Page Builder (formerly Visual Composer) | 92 | 61 | 12 | 400 | Text Domain Mismatch | ||
| #2852 | Visual Slider | 92 | 3 | 266 | 600 | Non-prefixed function | ||
| #2853 | Product Category Slider & Grid for WooCommerce – WooCategory | 92 | 321 | 9k+ | Non-prefixed global variable | |||
| #2854 | WooCommerce Accommodation Bookings | 92 | 1 | 91 | 1k+ | Non-prefixed global variable | ||
| #2855 | SFN Easy FAQ Manager | 92 | 127 | 14 | 2k+ | Text Domain Mismatch | ||
| #2856 | WP Force SSL & HTTPS SSL Redirect | 92 | 18 | 21 | 90k+ | Non-prefixed global variable | ||
| #2857 | WPC AJAX Add to Cart for WooCommerce | 92 | 28 | 10k+ | Non-prefixed hook name | |||
| #2858 | WPC Price by Quantity for WooCommerce | 92 | 37 | 1k+ | Non-prefixed global variable | |||
| #2859 | CF7 Mate – AI Form Builder, Styler & Multi-Step Forms for Contact Form 7 | 93 | 3 | 9 | 20k+ | Non-prefixed class | ||
| #2860 | Contextual Related Posts | 93 | 2 | 167 | 50k+ | Non-prefixed hook name | ||
| #2861 | EasyMega | 93 | 1 | 22 | 6k+ | Non-prefixed hook name | ||
| #2862 | Feed For TikTok Shop | 93 | 11 | 4 | 400 | wp function not compatible with requires wp | ||
| #2863 | WebToffee WooCommerce PDF Invoices, Packing Slips, Delivery Notes & Shipping Labels | 93 | 150 | 17 | 50k+ | wp function not compatible with requires wp | ||
| #2864 | Single Category Permalink | 93 | 5 | 12 | 400 | Non-prefixed global variable | ||
| #2865 | Smart Phone Field For WPForms, Contact Form 7, Fluent Forms, Elementor Forms, WooCommerce, Formidable Forms | 93 | 6 | 44 | 1k+ | Non-prefixed global variable | ||
| #2866 | Text To Speech TTS Accessibility | 93 | 165 | 3k+ | Non-prefixed hook name | |||
| #2867 | Use Administrator Password | 93 | 2 | 4 | 900 | Non-prefixed hook name | ||
| #2868 | Product Author for WooCommerce | 93 | 3 | 6 | 500 | Missing direct file access protection | ||
| #2869 | Carousel, Slider, Photo Gallery with Lightbox, Video Slider, by WP Carousel | 93 | 244 | 70k+ | Non-prefixed global variable | |||
| #2870 | External Links – nofollow, noopener & new window | 93 | 24 | 67 | 90k+ | Non-prefixed global variable | ||
| #2871 | JWT Authentication for WP REST APIs | 93 | 140 | 28 | 20k+ | wp function not compatible with requires wp | ||
| #2872 | WPC Free Shipping Bar for WooCommerce | 93 | 18 | 3k+ | Non-prefixed class | |||
| #2873 | WPC Variation Duplicator for WooCommerce | 93 | 18 | 400 | Non-prefixed class | |||
| #2874 | WPC Variations Radio Buttons for WooCommerce | 93 | 18 | 6k+ | Non-prefixed class | |||
| #2875 | WPCopyRights网站防复制插件 | 93 | 1 | 33 | 500 | Non-prefixed global variable | ||
| #2876 | Addonify Floating Cart For WooCommerce | 94 | 18 | 121 | 1k+ | Non-prefixed global variable | ||
| #2877 | Conditional Fields for Elementor Form – Apply Conditional Logic | 94 | 7 | 10k+ | Missing nonce verification | |||
| #2878 | Custom Image Sizes by 99 Robots | 94 | 35 | 26 | 600 | Text Domain Mismatch | ||
| #2879 | Dashboard Welcome for Elementor | 94 | 1 | 2 | 20k+ | Non-prefixed class | ||
| #2880 | Cool FormKit Lite – Advanced Form Builder for Elementor | 94 | 5 | 24 | 20k+ | Non-prefixed constant | ||
| #2881 | Login Lockdown & Protection | 94 | 5 | 15 | 100k+ | Non-prefixed global variable | ||
| #2882 | Logo Carousel – Responsive Logo Slider, Logo Showcase, and Clients Logo Gallery | 94 | 206 | 20k+ | Non-prefixed global variable | |||
| #2883 | NewsmanApp | 94 | 747 | 4 | 400 | Text Domain Mismatch | ||
| #2884 | Payment Gateway of Stripe for WooCommerce | 94 | 233 | 8k+ | Non-prefixed hook name | |||
| #2885 | TrueRanker | 94 | 49 | 18 | 400 | wp function not compatible with requires wp | ||
| #2886 | Simple Author Box | 94 | 12 | 61 | 90k+ | Non-prefixed global variable | ||
| #2887 | Widget Instance | 94 | 7 | 11 | 500 | Non-prefixed global variable | ||
| #2888 | Quick View for WooCommerce | 94 | 163 | 2k+ | Non-prefixed global variable | |||
| #2889 | Custom Branding for WooCommerce | 94 | 1 | 6 | 600 | Non-prefixed hook name | ||
| #2890 | MyParcel | 94 | 2 | 84 | 8k+ | Non-prefixed global variable | ||
| #2891 | Novalnet Payment Gateway for WooCommerce | 94 | 4 | 58 | 1k+ | Non-prefixed class | ||
| #2892 | WP Plugin Manager – Deactivate plugins per page | 94 | 18 | 11 | 3k+ | Missing direct file access protection | ||
| #2893 | WPC Product FAQs for WooCommerce | 94 | 20 | 1k+ | Non-prefixed class | |||
| #2894 | WPC Product Quantity for WooCommerce | 94 | 32 | 2k+ | Non-prefixed global variable | |||
| #2895 | Addonify – Compare Products For WooCommerce | 95 | 16 | 25 | 1k+ | Non-prefixed global variable | ||
| #2896 | Better Block Editor (BBE) | 95 | 4 | 53 | 5k+ | Non-prefixed global variable | ||
| #2897 | Bulk Media Register | 95 | 8 | 35 | 8k+ | Non-prefixed hook name | ||
| #2898 | Clicky by Yoast | 95 | 10 | 7 | 4k+ | Missing direct file access protection | ||
| #2899 | Custom Login Page Customizer | 95 | 3 | 55 | 50k+ | Non-prefixed global variable | ||
| #2900 | Contact Form to Any API | 95 | 18 | 8k+ | Non-prefixed class |