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 | Added | Updated | Top Issue |
|---|---|---|---|---|---|---|---|---|
| #3951 | Product Badges For WooCommerce | 98 | 16 | 600 | Non-prefixed global variable | |||
| #3952 | Remove & Disable XML-RPC Pingback | 98 | 2 | 6 | 8k+ | Non-prefixed function | ||
| #3953 | SAR Friendly SMTP | 98 | 2 | 11 | 2k+ | Non-prefixed function | ||
| #3954 | Second Street | 98 | 10 | 6 | 400 | Non Enqueued Script | ||
| #3955 | Seed Buddhist Year | 98 | 3 | 1 | 3k+ | Missing direct file access protection | ||
| #3956 | Semrush SEO Writing Assistant | 98 | 3 | 3 | 9k+ | Missing Arg Domain | ||
| #3957 | ShareThis Share Buttons | 98 | 29 | 10k+ | Non-prefixed global variable | |||
| #3958 | Shop as Client for WooCommerce – Manual, Phone & Email Orders | 98 | 1 | 5 | 600 | Non-prefixed function | ||
| #3959 | Product Variation Swatches for WooCommerce – Smart Swatches | 98 | 16 | 800 | Non-prefixed hook name | |||
| #3960 | Stick My Header for Astra | 98 | 2 | 3 | 600 | Non-prefixed global variable | ||
| #3961 | Wayfinder | 98 | 2 | 2 | 700 | Non-prefixed function | ||
| #3962 | Custom Add to Cart labels for WooCommerce | 98 | 3 | 5 | 5k+ | Non Singular String Literal Text | ||
| #3963 | WebFinger | 98 | 3 | 8 | 1k+ | Non-prefixed function | ||
| #3964 | Who Stole the Text Justify Button ?! | 98 | 1 | 3 | 7k+ | Non-prefixed function | ||
| #3965 | WPC Added To Cart Notification for WooCommerce | 98 | 17 | 3k+ | Non-prefixed class | |||
| #3966 | Align Woo Buttons | 98 | 3 | 6 | 3k+ | Non-prefixed function | ||
| #3967 | Table Rate Shipping for WooCommerce | 98 | 12 | 20k+ | Non-prefixed function | |||
| #3968 | Remove SKU From Single Product page | 98 | 8 | 2 | 1k+ | Text Domain Mismatch | ||
| #3969 | After Login Redirect | 98 | 1 | 21 | 1k+ | Non-prefixed global variable | ||
| #3970 | WP Category Order | 98 | 1 | 5 | 400 | trademarked term | ||
| #3971 | WP Edit Username | 98 | 1 | 14 | 2k+ | Non-prefixed hook name | ||
| #3972 | WPC Coupon Listing for WooCommerce | 98 | 18 | 1k+ | Non-prefixed class | |||
| #3973 | WPC Linked Variation for WooCommerce | 98 | 15 | 3k+ | Non-prefixed class | |||
| #3974 | WPC Name Your Price for WooCommerce | 98 | 16 | 6k+ | Non-prefixed class | |||
| #3975 | WPC Product Image Swap for WooCommerce | 98 | 15 | 1k+ | Non-prefixed class | |||
| #3976 | WPC Product Tabs for WooCommerce | 98 | 17 | 900 | Non-prefixed class | |||
| #3977 | WPC Product Videos for WooCommerce | 98 | 15 | 3k+ | Non-prefixed class | |||
| #3978 | WPC Sticky Add To Cart for WooCommerce | 98 | 17 | 2k+ | Non-prefixed class | |||
| #3979 | Advanced GeoIP Redirect | 99 | 13 | 1k+ | Non-prefixed global variable | |||
| #3980 | BD Courier Order Ratio Checker | 99 | 1 | 5 | 2k+ | Non-prefixed class | ||
| #3981 | Advanced Classic Editor | 99 | 1 | 1 | 2k+ | Non-prefixed function | ||
| #3982 | Block Specific Spam Woo Orders | 99 | 1 | 4 | 1k+ | Non-prefixed hook name | ||
| #3983 | Call To Action Customizable Block | 99 | 1 | 3 | 1k+ | Non-prefixed function | ||
| #3984 | Essential Widgets | 99 | 3 | 10k+ | Non-prefixed function | |||
| #3985 | Awesome FAQ – Modern Accordion, Tabs, Responsive & Super Fast FAQ Builder | 99 | 7 | 800 | Non-prefixed class | |||
| #3986 | Fr Custom Payment Gateway Icon for WooCommerce | 99 | 2 | 1 | 2k+ | Non-prefixed function | ||
| #3987 | Generate Security.txt | 99 | 1 | 5 | 500 | Non-prefixed class | ||
| #3988 | jAlbum Bridge | 99 | 1 | 6 | 500 | Not In Footer | ||
| #3989 | RTL Localization & Fonts | 99 | 1 | 1 | 1k+ | Non-prefixed function | ||
| #3990 | Portugal States (Distritos) for WooCommerce | 99 | 7 | 5k+ | Non-prefixed function | |||
| #3991 | Web Stories Widgets For Elementor | 99 | 1 | 3 | 1k+ | Non-prefixed class | ||
| #3992 | Siteboosterseo | 99 | 1 | 1 | 500 | Non-prefixed function | ||
| #3993 | Video Gallery Block | 99 | 3 | 1k+ | Non-prefixed function | |||
| #3994 | Free WooCommerce Products Slider/Carousel Pro | 99 | 11 | 2k+ | Non-prefixed global variable | |||
| #3995 | Express, Certified Post, Bike Delivery and Iranian Postal Companies for WooCommerce | 99 | 1 | 2 | 900 | Non-prefixed function | ||
| #3996 | WP Create Multiple Posts & Pages | 99 | 11 | 1k+ | Non-prefixed global variable | |||
| #3997 | Rename WP Media Files Name | 99 | 6 | 500 | Non-prefixed function | |||
| #3998 | Advanced Category and Custom Taxonomy Image | 100 | 2 | 1k+ | Non-prefixed class | |||
| #3999 | Document Embedder – Embed PDFs, Word, Excel, and Other Files | 100 | 2 | 9k+ | Non-prefixed function | |||
| #4000 | Popup for Elementor | 100 | 2 | 700 | Non-prefixed function |