Squiz.PHP.DiscouragedFunctions.Discouraged
Discouraged PHP function
The plugin uses a PHP or WordPress pattern that coding standards discourage.
Why It Shows Up
Plugin Check found a discouraged function, forbidden function, goto, backtick operator, or similar construct.
Why It Matters
Discouraged patterns are often harder to review, less portable across hosts, or easier to misuse securely.
How to Fix
- Identify why the construct is used and whether WordPress provides a safer API.
- Replace shell execution, dynamic execution, or broad forbidden functions with constrained WordPress APIs.
- If a third-party library triggers the warning, isolate and document it.
References
Affected Plugins
| Rank | Plugin | Score | Errors | Warnings | Installs | Added | Updated | Top Issue |
|---|---|---|---|---|---|---|---|---|
| #1 | BulletProof Security | 0 | 5,048 | 4,949 | 20k+ | Output is not escaped | ||
| #2 | Intercom | 0 | 60 | 71 | 6k+ | Non-prefixed function | ||
| #3 | Live Shopping & Shoppable Videos For WooCommerce | 0 | 79 | 174 | 400 | Non-prefixed global variable | ||
| #4 | Themify Builder | 9 | 5,389 | 2,245 | 5k+ | Text Domain Mismatch | ||
| #5 | JetBackup – Backup, Restore & Migrate | 10 | 1,567 | 156 | 200k+ | Exception output is not escaped | ||
| #6 | 404 Solution | 15 | 582 | 1,532 | 10k+ | Non-prefixed class | ||
| #7 | Easy WP SMTP – WordPress SMTP and Email Logs: Gmail SMTP, Office 365, Outlook, Custom SMTP, and more | 15 | 45 | 166 | 500k+ | Database parameter is not escaped | ||
| #8 | RestroPress – Online Food Ordering System | 17 | 535 | 3,234 | 1k+ | Non-prefixed global variable | ||
| #9 | Efí Bank | 17 | 886 | 553 | 300 | Exception output is not escaped | ||
| #10 | Shopping Cart & eCommerce Store | 17 | 7,453 | 17,866 | 3k+ | Non-prefixed global variable | ||
| #11 | wpForo Forum | 17 | 4,293 | 3,026 | 20k+ | Unsafe printing function | ||
| #12 | Advanced File Manager – Ultimate File Manager for WordPress And Document Library Solution | 18 | 1,229 | 923 | 100k+ | Exception output is not escaped | ||
| #13 | JetFormBuilder — Dynamic Blocks Form Builder | 18 | 2,131 | 1,623 | 80k+ | Text Domain Mismatch | ||
| #14 | Pagopar – WooCommerce Gateway | 18 | 530 | 1,215 | 400 | Non-prefixed global variable | ||
| #15 | GiveWP – Donation Plugin and Fundraising Platform | 19 | 3,422 | 3,570 | 100k+ | Output is not escaped | ||
| #16 | Go Fetch Jobs (for WP Job Manager) | 19 | 1,410 | 1,741 | 600 | Non-prefixed global variable | ||
| #17 | Matomo Analytics – Powerful, Privacy-First Insights for WordPress | 19 | 1,993 | 892 | 100k+ | Exception output is not escaped | ||
| #18 | Netgsm | 19 | 352 | 348 | 1k+ | Non-prefixed global variable | ||
| #19 | Verified Reviews (Avis Vérifiés) | 19 | 671 | 1,136 | 700 | Non-prefixed global variable | ||
| #20 | Really Simple Security – Simple and Performant Security (formerly Really Simple SSL) | 19 | 530 | 375 | 3m+ | Missing Translators Comment | ||
| #21 | SendPress Newsletters | 19 | 2,293 | 1,422 | 1k+ | Output is not escaped | ||
| #22 | Pixel Manager for WooCommerce – Conversion Tracking, Google Ads, GA4, TikTok, Dynamic Remarketing | 19 | 63 | 246 | 40k+ | Non-prefixed hook name | ||
| #23 | WP Email Template | 19 | 344 | 345 | 2k+ | Exception output is not escaped | ||
| #24 | WPOSS阿里云对象存储 | 19 | 269 | 315 | 900 | Non-prefixed namespace | ||
| #25 | Brizy – Page Builder | 20 | 585 | 726 | 60k+ | Output is not escaped | ||
| #26 | Download Monitor | 20 | 423 | 1,367 | 80k+ | Non-prefixed hook name | ||
| #27 | Duplicator – Backups & Migration Plugin – Cloud Backups, Scheduled Backups, & More | 20 | 2,878 | 1,988 | 1m+ | Non-prefixed global variable | ||
| #28 | GoUrl Bitcoin Payment Gateway & Paid Downloads & Membership | 20 | 1,832 | 720 | 700 | Non Singular String Literal Domain | ||
| #29 | MAS Videos | 20 | 519 | 1,693 | 1k+ | Non-prefixed global variable | ||
| #30 | Microthemer Lite – Visual Editor to Customize CSS | 20 | 1,004 | 1,699 | 10k+ | Non-prefixed global variable | ||
| #31 | Pronamic Pay | 20 | 266 | 1,078 | 2k+ | Non-prefixed global variable | ||
| #32 | Membership Plugin – Kadence Memberships | 20 | 5,089 | 3,005 | 9k+ | Text Domain Mismatch | ||
| #33 | Events Manager – OpenStreetMaps | 20 | 559 | 444 | 600 | Output is not escaped | ||
| #34 | Booster for WooCommerce – PDF Invoices, Abandoned Cart, Variation Swatches & 100+ Tools | 20 | 787 | 3,416 | 30k+ | Non-prefixed global variable | ||
| #35 | WP Compress – Instant Performance & Speed Optimization | 20 | 4,292 | 3,691 | 10k+ | Non Singular String Literal Domain | ||
| #36 | WP Minify Fix | 20 | 306 | 380 | 800 | Output is not escaped | ||
| #37 | Backup Migration | 21 | 999 | 1,081 | 80k+ | Non-prefixed global variable | ||
| #38 | Forumax – AI Powered Advanced Community Forum Plugin | 21 | 4,931 | 4,352 | 600 | Text Domain Mismatch | ||
| #39 | Kadence Security – Password, Two Factor Authentication, and Brute Force Protection | 21 | 1,060 | 959 | 700k+ | Missing Translators Comment | ||
| #40 | Pinpoint Booking System – Version 2 | 21 | 634 | 328 | 3k+ | Missing direct file access protection | ||
| #41 | Better Messages – Chat Rooms, Group Chat, Private Messages & AI Chat Bots | 21 | 1,674 | 2,180 | 10k+ | Direct Query | ||
| #42 | Captcha Them All | 21 | 300 | 323 | 5k+ | Output is not escaped | ||
| #43 | Spam protection, Honeypot, Anti-Spam by CleanTalk | 21 | 835 | 1,146 | 200k+ | Missing nonce verification | ||
| #44 | Comet Cache | 21 | 857 | 245 | 20k+ | Output is not escaped | ||
| #45 | DELUCKS SEO | 21 | 362 | 1,171 | 300 | Missing nonce verification | ||
| #46 | Envo Extra | 21 | 877 | 600 | 20k+ | Text Domain Mismatch | ||
| #47 | Event Espresso – Event Registration & Ticketing Sales | 21 | 12,710 | 2,136 | 600 | Text Domain Mismatch | ||
| #48 | Feeds for YouTube (YouTube video, channel, and gallery plugin) | 21 | 503 | 995 | 100k+ | Output is not escaped | ||
| #49 | FileOrganizer – WordPress File Manager | 21 | 549 | 261 | 200k+ | unlink unlink | ||
| #50 | Formidable Forms – WordPress Form Builder for Contact Forms, Calculators, Quizzes & More | 21 | 56 | 2,148 | 300k+ | Non-prefixed global variable |