WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedVariableFound
Non-prefixed global variable
The plugin defines a global variable 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 global variable 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 | Five Star Restaurant Reviews | 33 | 242 | 142 | 400 | Output is not escaped | ||
| #1802 | Comments – GraphComment | AI-Moderated Comment System | 33 | 196 | 177 | 400 | Unsafe printing function | ||
| #1803 | Gravity Forms Eway | 33 | 519 | 45 | 500 | Missing Translators Comment | ||
| #1804 | GSheetConnector for Forminator Forms | 33 | 128 | 201 | 1k+ | Non-prefixed global variable | ||
| #1805 | Ultimate Addons for Elementor | 33 | 81 | 291 | 2m+ | Non-prefixed class | ||
| #1806 | Mentions légales [FR] | 33 | 238 | 48 | 2k+ | Text Domain Mismatch | ||
| #1807 | HurryTimer – An Scarcity and Urgency Countdown Timer for WordPress & WooCommerce | 33 | 377 | 139 | 20k+ | Unsafe printing function | ||
| #1808 | Image Source Control Lite – Show Image Credits and Captions | 33 | 140 | 221 | 3k+ | Non-prefixed hook name | ||
| #1809 | ImageLinks – Interactive Image Builder with Hotspots | 33 | 517 | 90 | 1k+ | Text Domain Mismatch | ||
| #1810 | Inactive User Deleter | 33 | 453 | 170 | 800 | Output is not escaped | ||
| #1811 | InPost Gallery | 33 | 105 | 245 | 700 | Non-prefixed global variable | ||
| #1812 | WPZOOM Social Feed Widget & Block | 33 | 310 | 278 | 60k+ | Unsafe printing function | ||
| #1813 | Intagrate Lite | 33 | 94 | 152 | 4k+ | date date | ||
| #1814 | IP2Location Redirection | 33 | 198 | 122 | 7k+ | Output is not escaped | ||
| #1815 | IssueM | 33 | 56 | 173 | 600 | Request data is not unslashed | ||
| #1816 | ITRO Popup Plugin | 33 | 591 | 135 | 6k+ | Output is not escaped | ||
| #1817 | JetWidgets for Elementor and WooCommerce | 33 | 187 | 146 | 7k+ | Text Domain Mismatch | ||
| #1818 | jQuery Manager for WordPress | 33 | 86 | 24 | 7k+ | Output is not escaped | ||
| #1819 | LWSCache | 33 | 47 | 104 | 6k+ | Non-prefixed global variable | ||
| #1820 | Forms for Mailchimp by Optin Cat – Grow Your MailChimp List | 33 | 71 | 133 | 2k+ | Missing direct file access protection | ||
| #1821 | MailUp for WordPress – Email and Newsletter Subscription Form | 33 | 251 | 100 | 2k+ | Text Domain Mismatch | ||
| #1822 | MWB HubSpot for WooCommerce – CRM, Abandoned Cart, Email Marketing, Marketing Automation & Analytics | 33 | 26 | 279 | 7k+ | Non-prefixed global variable | ||
| #1823 | MAS Companies For WP Job Manager | 33 | 62 | 308 | 1k+ | Non-prefixed hook name | ||
| #1824 | MaxiBlocks Builder | 17,000+ Design Assets, Patterns, Icons & Starter Sites | 33 | 2 | 503 | 800 | Non-prefixed function | ||
| #1825 | Membership For WooCommerce | 33 | 40 | 659 | 900 | Non-prefixed global variable | ||
| #1826 | Mollie Payments for WooCommerce | 33 | 70 | 123 | 100k+ | Dynamic hook name | ||
| #1827 | Molongui Post Contributors: Multi-Role Contributor Attribution | 33 | 240 | 162 | 500 | Output is not escaped | ||
| #1828 | More Types | 33 | 227 | 198 | 800 | Non-prefixed global variable | ||
| #1829 | News Announcement Scroll | 33 | 237 | 259 | 2k+ | Non-prefixed global variable | ||
| #1830 | Notification Master – Real-Time WordPress Notifications With Email, SMS, Webhooks & More | 33 | 293 | 215 | 1k+ | Text Domain Mismatch | ||
| #1831 | Offen | 33 | 313 | 115 | 500 | Output is not escaped | ||
| #1832 | Pastacode | 33 | 77 | 66 | 400 | Non-prefixed global variable | ||
| #1833 | Payflex Payment Gateway | 33 | 181 | 61 | 1k+ | Text Domain Mismatch | ||
| #1834 | PeproDev WooCommerce Receipt Uploader | 33 | 325 | 49 | 1k+ | Non Singular String Literal Domain | ||
| #1835 | پینوا | Pinova | 33 | 171 | 75 | 500 | Output is not escaped | ||
| #1836 | Podcast Subscribe Buttons | 33 | 552 | 39 | 5k+ | Text Domain Mismatch | ||
| #1837 | FancyPost – Post Blocks, Grids & Sliders for Block Editor and Elementor | 33 | 356 | 271 | 500 | Output is not escaped | ||
| #1838 | Post Lists View Custom | 33 | 462 | 150 | 2k+ | Missing Arg Domain | ||
| #1839 | PublishPress Checklists: Pre-Publishing Approval Checklist – Validate Post Requirements | 33 | 140 | 182 | 3k+ | Missing Translators Comment | ||
| #1840 | QNAP NAS Backup | 33 | 374 | 70 | 2k+ | Non Singular String Literal Domain | ||
| #1841 | Frisbii Pay | 33 | 91 | 292 | 1k+ | Non-prefixed global variable | ||
| #1842 | Rename wp-login.php to anything you want | 33 | 251 | 117 | 500 | Output is not escaped | ||
| #1843 | Review Slider for WooCommerce | 33 | 160 | 422 | 400 | Non-prefixed global variable | ||
| #1844 | Reviews Plus | 33 | 223 | 378 | 1k+ | Non-prefixed function | ||
| #1845 | RTMKit | 33 | 11 | 388 | 50k+ | Non-prefixed global variable | ||
| #1846 | Live Sales Notification (Recent Sales Popups) | 33 | 114 | 120 | 400 | SQL query is not prepared | ||
| #1847 | Save as PDF Plugin by PDFCrowd | 33 | 299 | 254 | 1k+ | Non-prefixed global variable | ||
| #1848 | Schema & Structured Data for WP & AMP | 33 | 63 | 246 | 100k+ | Non-prefixed global variable | ||
| #1849 | Service Box – Icon Box Showcase | 33 | 385 | 230 | 3k+ | Non Singular String Literal Domain | ||
| #1850 | Sessions | 33 | 196 | 103 | 900 | Output is not escaped |