WordPress.WP.DiscouragedFunctions.query_posts_query_posts
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 |
|---|---|---|---|---|---|---|---|---|
| #51 | IssueM | 33 | 56 | 173 | 600 | Request data is not unslashed | ||
| #52 | Telegram Bot & Channel | 33 | 182 | 113 | 600 | Unsafe printing function | ||
| #53 | Clean Testimonials | 34 | 127 | 87 | 400 | Output is not escaped | ||
| #54 | Podigee WordPress Quick Publish – now with Gutenberg support! | 34 | 108 | 95 | 700 | Text Domain Mismatch | ||
| #55 | Editorial Calendar | 35 | 127 | 160 | 20k+ | Output is not escaped | ||
| #56 | HivePress – Business Directory, Listings & Classified Ads Plugin | 35 | 38 | 183 | 10k+ | Direct Query | ||
| #57 | Materialis Companion | 36 | 129 | 67 | 6k+ | Unsafe printing function | ||
| #58 | Peter’s Post Notes | 36 | 224 | 102 | 3k+ | Output is not escaped | ||
| #59 | Subscribe to Comments | 36 | 129 | 163 | 10k+ | Output is not escaped | ||
| #60 | Simple Custom CSS and JS | 37 | 168 | 69 | 600k+ | Output is not escaped | ||
| #61 | Get Custom Field Values | 37 | 40 | 44 | 1k+ | Output is not escaped | ||
| #62 | List category posts | 37 | 161 | 17 | 80k+ | Output is not escaped | ||
| #63 | Announcement Bar | 38 | 192 | 61 | 3k+ | Non Singular String Literal Domain | ||
| #64 | Responsive WordPress Slider – HG Slider | 38 | 67 | 75 | 7k+ | Missing nonce verification | ||
| #65 | GoodBarber | 38 | 38 | 73 | 1k+ | Nonce verification recommended | ||
| #66 | WP-EMail | 38 | 338 | 95 | 1k+ | Unsafe printing function | ||
| #67 | Elementor Website Builder – more than just a page builder | 39 | 44 | 427 | 10m+ | Non-prefixed global variable | ||
| #68 | Gutenverse News – News Blocks for Blog & Magazine Sites | 39 | 37 | 65 | 800 | Non-prefixed hook name | ||
| #69 | Post Tiles | 40 | 46 | 5 | 400 | Output is not escaped | ||
| #70 | Content Widget | 41 | 72 | 9 | 400 | Output is not escaped | ||
| #71 | PuSHPress | 42 | 11 | 65 | 20k+ | Missing nonce verification | ||
| #72 | Recent Posts Widget Plus | 42 | 68 | 3 | 500 | Output is not escaped | ||
| #73 | Vertical marquee post title | 42 | 109 | 68 | 400 | Output is not escaped | ||
| #74 | Post title marquee scroll | 43 | 43 | 25 | 1k+ | Output is not escaped | ||
| #75 | Wpazure Kit | 44 | 136 | 140 | 800 | Missing direct file access protection | ||
| #76 | Ascending Posts by Fly Plugins | 55 | 23 | 13 | 500 | Text Domain Mismatch | ||
| #77 | Insert Pages | 55 | 52 | 30 | 40k+ | Output is not escaped | ||
| #78 | Random Post for Widget | 58 | 27 | 5 | 2k+ | Output is not escaped | ||
| #79 | Magic Tooltips For Contact Form 7 | 61 | 37 | 21 | 700 | Text Domain Mismatch | ||
| #80 | WP SEO HTML Sitemap | 65 | 22 | 15 | 5k+ | Output is not escaped | ||
| #81 | Advanced Sitemap Generator | 88 | 5 | 5 | 400 | Discouraged PHP function |