Generic.PHP.ForbiddenFunctions.Found
Forbidden PHP function found
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 |
|---|---|---|---|---|---|---|---|---|
| #651 | PJ News Ticker | 75 | 13 | 14 | 3k+ | Output is not escaped | ||
| #652 | Tuxedo Responsive Widget Columns | 78 | 19 | 3 | 400 | Output is not escaped | ||
| #653 | WP Faster | 78 | 7 | 12 | 1k+ | trademarked term | ||
| #654 | ElasticPress | 81 | 13 | 655 | 8k+ | Non-prefixed hook name | ||
| #655 | Migrate Guru – Site Migration & Cloning | 81 | 7 | 8 | 200k+ | Database parameter is not escaped | ||
| #656 | ForumWP – Forum & Discussion Board | 82 | 22 | 444 | 800 | Non-prefixed global variable | ||
| #657 | Fixed Widget and Sticky Elements for WordPress | 83 | 7 | 13 | 80k+ | Non-prefixed global variable | ||
| #658 | Remove Yoast SEO Comments | 85 | 12 | 5 | 10k+ | wp function not compatible with requires wp | ||
| #659 | Widget CSS Classes | 85 | 47 | 8 | 80k+ | Non Singular String Literal Domain | ||
| #660 | Debug Bar Actions and Filters Addon | 86 | 6 | 4 | 400 | Forbidden PHP function found | ||
| #661 | Greenshift Smart Code AI | 86 | 9 | 9 | 1k+ | Request data is not unslashed | ||
| #662 | ProScores – Live Scores | 88 | 12 | 4 | 800 | wp function not compatible with requires wp | ||
| #663 | WP Anywhere Widgets | 89 | 16 | 14 | 700 | wp function not compatible with requires wp | ||
| #664 | Faust.js | 91 | 9 | 4 | 1k+ | Missing direct file access protection | ||
| #665 | Mesmerize Companion | 91 | 27 | 91 | 50k+ | Non-prefixed global variable | ||
| #666 | Slim SEO – A Fast & Automated SEO Plugin For WordPress | 91 | 3 | 9 | 60k+ | Database parameter is not escaped | ||
| #667 | Snow Monkey Forms | 91 | 36 | 41 | 30k+ | Non-prefixed global variable | ||
| #668 | JobBoardWP – Job Board Listings and Submissions | 94 | 12 | 44 | 1k+ | slow db query meta query | ||
| #669 | Widget Instance | 94 | 7 | 11 | 500 | Non-prefixed global variable | ||
| #670 | WP Typograph Lite | 94 | 8 | 4 | 1k+ | trademarked term | ||
| #671 | Print Invoice & Delivery Notes for WooCommerce | 95 | 5 | 58 | 30k+ | Non-prefixed global variable | ||
| #672 | YLabs Connector for WPWriter | 95 | 5 | 7 | 1k+ | Forbidden PHP function found | ||
| #673 | Require Post Category | 96 | 6 | 4 | 1k+ | Discouraged text-domain loading | ||
| #674 | Disable Password Reset | 97 | 5 | 0 | 1k+ | Forbidden PHP function found | ||
| #675 | Disable Responsive Images | 97 | 5 | 0 | 600 | Forbidden PHP function found | ||
| #676 | Add Custom Codes – Insert Header, Footer, Custom PHP Snippets, CSS, Javascript | 98 | 2 | 3 | 1k+ | Forbidden PHP function found |