WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedConstantFound
Non-prefixed constant
The plugin defines a constant 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 constant 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 |
|---|---|---|---|---|---|---|---|---|
| #1801 | WPC Composite Products for WooCommerce | 41 | 11 | 73 | 9k+ | Missing nonce verification | ||
| #1802 | Pricing Table – Responsive & Easy | 42 | 117 | 148 | 3k+ | Non-prefixed global variable | ||
| #1803 | Add to Home Screen & Progressive Web App | 42 | 23 | 68 | 1k+ | Request data is not unslashed | ||
| #1804 | Custom Admin Page by BestWebSoft – Configurable WordPress Dashboard Pages Plugin | 42 | 472 | 181 | 400 | Text Domain Mismatch | ||
| #1805 | Disable User Login | 42 | 25 | 19 | 5k+ | Unsafe printing function | ||
| #1806 | GA Google Analytics – Connect Google Analytics to WordPress | 42 | 46 | 30 | 400k+ | Output is not escaped | ||
| #1807 | iyzico for WooCommerce | 42 | 34 | 54 | 10k+ | Unsafe printing function | ||
| #1808 | Product Price History for WooCommerce | 42 | 101 | 800 | Nonce verification recommended | |||
| #1809 | Rename wp-admin login | 42 | 23 | 38 | 8k+ | Output is not escaped | ||
| #1810 | Simple Download Counter | 42 | 58 | 46 | 2k+ | Output is not escaped | ||
| #1811 | Simple Googlebot Visit | 42 | 32 | 67 | 1k+ | Non Singular String Literal Domain | ||
| #1812 | SuperSaaS – online appointment scheduling | 42 | 79 | 10 | 1k+ | Text Domain Mismatch | ||
| #1813 | Ultimate Coming Soon Page, Maintenance Mode & Under Construction – Gutenberg Block Builder & Landing Page | 42 | 15 | 89 | 9k+ | Non-prefixed global variable | ||
| #1814 | Vast Demo Import | 42 | 180 | 113 | 600 | Text Domain Mismatch | ||
| #1815 | WPC Order Notes for WooCommerce | 42 | 24 | 41 | 900 | Output is not escaped | ||
| #1816 | Dynamic Remarketing for Google Ads and WooCommerce | 42 | 32 | 15 | 2k+ | Output is not escaped | ||
| #1817 | Eventin – Event Calendar, Event Registration, Tickets & Booking (AI Powered) | 42 | 2,583 | 1,823 | 10k+ | Text Domain Mismatch | ||
| #1818 | AddFunc Head & Footer Code | 43 | 28 | 18 | 20k+ | Output is not escaped | ||
| #1819 | AMP | 43 | 63 | 362 | 400k+ | Non-prefixed hook name | ||
| #1820 | Animation Builder – An interface for adding scroll-triggered animations | 43 | 7 | 67 | 900 | Missing Version | ||
| #1821 | BMI Adult & Kid Calculator | 43 | 33 | 138 | 700 | Request data is not unslashed | ||
| #1822 | Snazzy Maps | 43 | 9 | 62 | 30k+ | Request data is not unslashed | ||
| #1823 | SQL Chart Builder | 43 | 12 | 39 | 600 | Non-prefixed global variable | ||
| #1824 | Terms Order WP – Categories And Taxonomies Order Plugin | 43 | 12 | 47 | 900 | Non-prefixed global variable | ||
| #1825 | Ultimate Member Widgets for Elementor – Login Form, Register Form & User Directory | 43 | 15 | 102 | 400 | Non-prefixed namespace | ||
| #1826 | WPC Countdown Timer for WooCommerce | 43 | 52 | 36 | 1k+ | Output is not escaped | ||
| #1827 | Admin login URL Change | 44 | 38 | 11 | 2k+ | Output is not escaped | ||
| #1828 | Advanced Dynamic Pricing and Discount Rules for WooCommerce | 44 | 2 | 813 | 20k+ | Non-prefixed namespace | ||
| #1829 | Buttonizer – Live Chat, AI Chatbot, Call, Chat, Contact Button | 44 | 24 | 71 | 50k+ | Non-prefixed constant | ||
| #1830 | Code Widget | 44 | 60 | 33 | 4k+ | Text Domain Mismatch | ||
| #1831 | Coming soon and Maintenance mode | 44 | 14 | 43 | 9k+ | Request data is not unslashed | ||
| #1832 | ELEX WooCommerce Role Based Pricing | 44 | 213 | 196 | 2k+ | Non-prefixed global variable | ||
| #1833 | Github Embed | 44 | 18 | 35 | 1k+ | Non-prefixed global variable | ||
| #1834 | Simple Image Widget | 44 | 26 | 19 | 10k+ | Unsafe printing function | ||
| #1835 | SKT Addons for Elementor | 44 | 611 | 383 | 1k+ | Text Domain Mismatch | ||
| #1836 | Custom Error Pages | 45 | 51 | 16 | 600 | Output is not escaped | ||
| #1837 | Jetpack Search | 45 | 925 | 426 | 5k+ | Text Domain Mismatch | ||
| #1838 | Product Visibility by User Role for WooCommerce | 45 | 36 | 35 | 6k+ | Missing Translators Comment | ||
| #1839 | VietQR | 45 | 32 | 39 | 5k+ | Text Domain Mismatch | ||
| #1840 | Payrexx Payment Gateway for WooCommerce | 45 | 17 | 117 | 2k+ | Non-prefixed class | ||
| #1841 | wpDataTables integration for Forminator Forms | 45 | 62 | 38 | 1k+ | Text Domain Mismatch | ||
| #1842 | ARI Stream Quiz – WordPress Quizzes Builder | 46 | 21 | 239 | 2k+ | Non-prefixed global variable | ||
| #1843 | Display Featured Image for Genesis | 46 | 64 | 59 | 1k+ | Non-prefixed global variable | ||
| #1844 | Enhanced AJAX Add to Cart for WooCommerce | 46 | 90 | 78 | 700 | Missing Arg Domain | ||
| #1845 | Gravity Forms Constant Contact | 46 | 36 | 27 | 3k+ | Non-prefixed class | ||
| #1846 | Import Social Events | 46 | 26 | 355 | 3k+ | Non-prefixed global variable | ||
| #1847 | Logo Slider – Logo Carousel, Client Logo Slider & Brand Showcase for WordPress | 46 | 16 | 247 | 10k+ | Non-prefixed global variable | ||
| #1848 | RY Tools for WooCommerce | 46 | 295 | 5k+ | Non-prefixed class | |||
| #1849 | Simple Sitemap – Create a Responsive HTML Sitemap | 46 | 33 | 48 | 60k+ | Non-prefixed hook name | ||
| #1850 | Link in Bio Creator – Social | 46 | 52 | 36 | 2k+ | Non Singular String Literal Domain |