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 |
|---|---|---|---|---|---|---|---|---|
| #1901 | WholesaleX – B2B & Wholesale Plugin for WooCommerce with Wholesale Prices | 38 | 33 | 181 | 2k+ | Non-prefixed global variable | ||
| #1902 | Photo Reviews for WooCommerce | 38 | 26 | 222 | 10k+ | Request data is not unslashed | ||
| #1903 | Vietnam Checkout for WooCommerce | 38 | 93 | 137 | 10k+ | Nonce verification recommended | ||
| #1904 | Connect WooCommerce Shop to ERP/CRM, Verifactu and EU/VAT Compliance | 38 | 23 | 104 | 1k+ | Direct Query | ||
| #1905 | WP Content Copy Protection with Color Design | 38 | 96 | 61 | 5k+ | Non Singular String Literal Domain | ||
| #1906 | WP Mailgun SMTP | 38 | 99 | 51 | 900 | Text Domain Mismatch | ||
| #1907 | WP Redirects – Contact Form 7 | 38 | 50 | 71 | 400 | Unsafe printing function | ||
| #1908 | WP Video Lightbox | 38 | 107 | 67 | 30k+ | Unsafe printing function | ||
| #1909 | WPC Product Options for WooCommerce | 38 | 57 | 182 | 4k+ | Non-prefixed global variable | ||
| #1910 | mb.YTPlayer for background videos | 38 | 80 | 29 | 1k+ | Unsafe printing function | ||
| #1911 | Weather Underground | 38 | 64 | 27 | 3k+ | Output is not escaped | ||
| #1912 | Zoho Campaigns | 38 | 3 | 129 | 3k+ | Non-prefixed global variable | ||
| #1913 | Smart Custom 404 Error Page | 39 | 90 | 44 | 100k+ | Output is not escaped | ||
| #1914 | ACF: Google Font Selector | 39 | 57 | 45 | 3k+ | Output is not escaped | ||
| #1915 | Add Tiktok Pixel for Tiktok ads (+Woocommerce) | 39 | 94 | 25 | 2k+ | Output is not escaped | ||
| #1916 | Advanced Categories Widget | 39 | 170 | 41 | 800 | Output is not escaped | ||
| #1917 | Affiliate Links – Link Cloaking and Management | 39 | 23 | 113 | 3k+ | Non-prefixed global variable | ||
| #1918 | AffiliatePages – Pros & Cons, Notice, and CTA Blocks for Affiliates | 39 | 91 | 53 | 2k+ | Output is not escaped | ||
| #1919 | AffiliateWP – Affiliate Area Tabs | 39 | 86 | 26 | 3k+ | Output is not escaped | ||
| #1920 | Load More Anything | 39 | 38 | 73 | 5k+ | Output is not escaped | ||
| #1921 | AWEOS WP Lock | 39 | 24 | 53 | 400 | Output is not escaped | ||
| #1922 | Header Footer for Beaver Builder | 39 | 39 | 31 | 10k+ | Output is not escaped | ||
| #1923 | bbPress Moderation | 39 | 75 | 15 | 500 | Non Singular String Literal Domain | ||
| #1924 | Better User Search | 39 | 24 | 44 | 700 | SQL query is not prepared | ||
| #1925 | BIP Pages | 39 | 98 | 25 | 400 | Short PHP open tag found | ||
| #1926 | BuddyPress Default Cover Photo | 39 | 62 | 39 | 500 | Output is not escaped | ||
| #1927 | BuddyPress Notification Widget | 39 | 54 | 31 | 600 | Output is not escaped | ||
| #1928 | Calculator Builder – Create an Online Calculator | 39 | 16 | 221 | 1k+ | Non-prefixed global variable | ||
| #1929 | Saitama Addon Pack | 39 | 152 | 27 | 1k+ | Output is not escaped | ||
| #1930 | Contact Form 7 – Dynamic Text Extension | 39 | 103 | 28 | 100k+ | Output is not escaped | ||
| #1931 | Culqi | 39 | 571 | 88 | 1k+ | Text Domain Mismatch | ||
| #1932 | Custom Post Type Parents | 39 | 75 | 18 | 900 | Output is not escaped | ||
| #1933 | Drip for Gravity Forms | 39 | 41 | 21 | 500 | Unsafe printing function | ||
| #1934 | BestWebSoft's Like & Share – Posts, Pages and Widget Social Extension plugin for WordPress | 39 | 480 | 226 | 4k+ | Text Domain Mismatch | ||
| #1935 | GF Mollie by Indigo | 39 | 82 | 33 | 900 | Exception output is not escaped | ||
| #1936 | Google Calendar Widget | 39 | 82 | 11 | 700 | Output is not escaped | ||
| #1937 | Prisna GWT – Google Website Translator | 39 | 117 | 77 | 8k+ | Text Domain Mismatch | ||
| #1938 | Gravity Slider Fields | 39 | 56 | 36 | 2k+ | Text Domain Mismatch | ||
| #1939 | GS Only PDF Preview | 39 | 46 | 36 | 1k+ | Output is not escaped | ||
| #1940 | Hide My WP Lite | 39 | 24 | 62 | 400 | Nonce verification recommended | ||
| #1941 | hpb seo plugin for WordPress | 39 | 15 | 87 | 2k+ | Non-prefixed global variable | ||
| #1942 | HW Image Widget | 39 | 138 | 41 | 1k+ | Output is not escaped | ||
| #1943 | S2W – Import Shopify to WooCommerce | 39 | 8 | 132 | 3k+ | Request data is not unslashed | ||
| #1944 | Logo Showcase – Carousel, Slider, Grid & List for WordPress | 39 | 123 | 160 | 400 | Unsafe printing function | ||
| #1945 | MailChimp Add-On for FormCraft | 39 | 56 | 29 | 800 | curl curl setopt | ||
| #1946 | Manage Enrollment for LearnDash | 39 | 48 | 79 | 400 | Unsafe printing function | ||
| #1947 | Maps for WP | 39 | 169 | 73 | 400 | Output is not escaped | ||
| #1948 | Media Sync | 39 | 193 | 7 | 50k+ | Short PHP open tag found | ||
| #1949 | Mega Addons For WPBakery Page Builder | 39 | 1,320 | 154 | 20k+ | Text Domain Mismatch | ||
| #1950 | Zen Feed | 39 | 39 | 22 | 500 | Output is not escaped |