WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedFunctionFound
Non-prefixed function
The plugin defines a function 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 function 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 | Updated | Top Issue |
|---|---|---|---|---|---|---|---|
| #2501 | Genesis Connect for WooCommerce | 96 | 45 | 17 | 10k+ | Text Domain Mismatch | |
| #2502 | LTR RTL Admin content | 96 | 4 | 5 | 4k+ | Missing Version | |
| #2503 | Divi Masonry Gallery – Pro Gallery | 96 | 54 | 16 | 2k+ | Text Domain Mismatch | |
| #2504 | Post Layouts for Gutenberg | 96 | 4 | 26 | 2k+ | Non-prefixed class | |
| #2505 | Preloader Awesome – Page Loading Animation with Spinner & Gif | 96 | 32 | 7 | 1k+ | Missing direct file access protection | |
| #2506 | Pretty Google Calendar | 96 | 12 | 4 | 5k+ | wp function not compatible with requires wp | |
| #2507 | Widgets for Airbnb Reviews | 96 | 345 | 6k+ | Non-prefixed global variable | ||
| #2508 | Widgets for Amazon Reviews | 96 | 348 | 2k+ | Non-prefixed global variable | ||
| #2509 | Widgets for Yelp Reviews | 96 | 345 | 2k+ | Non-prefixed global variable | ||
| #2510 | Simple GDPR Cookie Compliance | 96 | 10 | 16 | 5k+ | Non-prefixed global variable | |
| #2511 | Team Members | 96 | 15 | 16 | 20k+ | Missing direct file access protection | |
| #2512 | Acme Fix Images – Regenerate Thumbnails | 97 | 5 | 5 | 3k+ | Missing direct file access protection | |
| #2513 | AinoBlocks – Gutenberg Website Builder Blocks | 97 | 18 | 4 | 1k+ | block api version too low | |
| #2514 | Allow Webp image | 97 | 4 | 7 | 6k+ | Non-prefixed function | |
| #2515 | Before + After Images for Divi | 97 | 12 | 3 | 3k+ | Missing direct file access protection | |
| #2516 | Categories in Hierarchical Order | 97 | 1 | 5 | 2k+ | Non-prefixed function | |
| #2517 | Contact Form to Any API | 97 | 1 | 15 | 8k+ | Non-prefixed class | |
| #2518 | Email Customizer for WooCommerce | Drag and Drop Email Templates Builder | 97 | 65 | 9k+ | Non-prefixed hook name | ||
| #2519 | Genesis Portfolio Pro | 97 | 9 | 16 | 5k+ | Non-prefixed global variable | |
| #2520 | Address Autocomplete via Google for Gravity Forms | 97 | 1 | 25 | 2k+ | Non-prefixed global variable | |
| #2521 | Laravel DD for WordPress | 97 | 3 | 6 | 1k+ | Non-prefixed function | |
| #2522 | MB Rest API | 97 | 5 | 5 | 1k+ | wp function not compatible with requires wp | |
| #2523 | Olark Live Chat | 97 | 3 | 16 | 1k+ | Non-prefixed global variable | |
| #2524 | Order Export for WooCommerce | 97 | 31 | 2k+ | Missing Version | ||
| #2525 | Page-list | 97 | 5 | 23 | 30k+ | Post Not In exclude | |
| #2526 | Podlove Web Player | 97 | 8 | 4 | 4k+ | Missing direct file access protection | |
| #2527 | PowerFolio – Portfolio & Image Gallery for Elementor | 97 | 10 | 12 | 10k+ | Non-prefixed hook name | |
| #2528 | Relative URL | 97 | 4 | 3 | 3k+ | wp function not compatible with requires wp | |
| #2529 | Simple SMTP | 97 | 3 | 10 | 2k+ | Non-prefixed hook name | |
| #2530 | Simple Social Icons | 97 | 4 | 3 | 100k+ | Missing direct file access protection | |
| #2531 | Sticky Menu & Sticky Header | 97 | 4 | 23 | 100k+ | Non-prefixed global variable | |
| #2532 | TinyMCE Clear Float | 97 | 2 | 4 | 10k+ | Missing direct file access protection | |
| #2533 | WPC Fly Cart for WooCommerce | 97 | 32 | 10k+ | Non-prefixed hook name | ||
| #2534 | Social Media Feed Gallery – Fetch Posts & Reels | 97 | 1 | 25 | 2k+ | Non-prefixed global variable | |
| #2535 | WPC Product Size Chart for WooCommerce | 97 | 19 | 2k+ | Non-prefixed class | ||
| #2536 | Author Bio Box | 98 | 1 | 6 | 1k+ | Non-prefixed global variable | |
| #2537 | Autoremove Attachments | 98 | 2 | 5 | 3k+ | Non-prefixed function | |
| #2538 | Clone Posts | 98 | 5 | 5 | 10k+ | Missing Arg Domain | |
| #2539 | File Upload Types by WPForms | 98 | 2 | 9 | 30k+ | Non-prefixed function | |
| #2540 | Find My Blocks – Locate blocks on your site | 98 | 2 | 7 | 4k+ | Non-prefixed function | |
| #2541 | Image Picker For Gravity Forms | 98 | 21 | 1k+ | Non-prefixed global variable | ||
| #2542 | Multi Device Switcher | 98 | 2 | 9 | 20k+ | Non-prefixed function | |
| #2543 | NIF (Num. de Contribuinte Português) for WooCommerce | 98 | 2 | 9 | 5k+ | Non-prefixed constant | |
| #2544 | Remove & Disable XML-RPC Pingback | 98 | 2 | 6 | 8k+ | Non-prefixed function | |
| #2545 | SAR Friendly SMTP | 98 | 2 | 11 | 2k+ | Non-prefixed function | |
| #2546 | Seed Buddhist Year | 98 | 3 | 1 | 3k+ | Missing direct file access protection | |
| #2547 | Semrush SEO Writing Assistant | 98 | 3 | 3 | 9k+ | Missing Arg Domain | |
| #2548 | ShareThis Share Buttons | 98 | 29 | 10k+ | Non-prefixed global variable | ||
| #2549 | WebFinger | 98 | 3 | 8 | 1k+ | Non-prefixed function | |
| #2550 | Who Stole the Text Justify Button ?! | 98 | 1 | 3 | 7k+ | Non-prefixed function |