WordPress.Security.EscapeOutput.OutputNotEscaped
Output is not escaped
Dynamic data is printed to the page without an escaping function for the output context.
Why It Shows Up
WordPress Coding Standards detected a variable, option, request value, or function result reaching HTML output without a nearby escaping call.
Why It Matters
Unescaped output can become cross-site scripting when attackers control any part of the value being printed.
How to Fix
- Use `esc_html()` for plain text, `esc_attr()` for attributes, and `esc_url()` for URLs.
- Use `wp_kses()` or `wp_kses_post()` when limited HTML is intentionally allowed.
- Escape as late as possible, right before output, so the selected escaping function matches the final context.
References
Affected Plugins
| Rank | Plugin | Score | Errors | Warnings | Installs | Added | Updated | Top Issue |
|---|---|---|---|---|---|---|---|---|
| #351 | Content Egg – Affiliate Product Importer & Price Comparison | 23 | 1,245 | 1,275 | 10k+ | Non-prefixed global variable | ||
| #352 | Content Views – Post Grid & Filter, Recent Posts, Category Posts … (Shortcode, Gutenberg Blocks, and Widgets for Elementor) | 23 | 306 | 587 | 100k+ | Dynamic hook name | ||
| #353 | Contest Gallery – Upload & Vote Photos, Media, Sell with PayPal & Stripe | 23 | 9,315 | 26,644 | 1k+ | Non-prefixed global variable | ||
| #354 | Free Theme Builder for Elementor – CRT Addons (Header, Footer, Archive, WooCommerce & 50+ Widgets) | 23 | 791 | 2,331 | 400 | Non-prefixed global variable | ||
| #355 | Currency Exchange for WooCommerce | 23 | 692 | 505 | 500 | Output is not escaped | ||
| #356 | CWW Companion | 23 | 307 | 223 | 1k+ | Output is not escaped | ||
| #357 | Auto Post Cleaner | 23 | 715 | 1,378 | 1k+ | Non-prefixed global variable | ||
| #358 | Disable Bloat for WordPress & WooCommerce | 23 | 863 | 1,325 | 10k+ | Non-prefixed global variable | ||
| #359 | DK PDF – WordPress PDF Generator | 23 | 744 | 335 | 3k+ | Exception output is not escaped | ||
| #360 | Dokan: AI Powered WooCommerce Multivendor Marketplace Solution – Build Your Own Amazon, eBay, Etsy | 23 | 170 | 821 | 40k+ | Non-prefixed global variable | ||
| #361 | Easy Age Verify | 23 | 1,138 | 2,631 | 1k+ | Non-prefixed global variable | ||
| #362 | Easy Digital Downloads – eCommerce Payments and Subscriptions made easy | 23 | 3,723 | 10,283 | 40k+ | Non-prefixed namespace | ||
| #363 | Marijuana Age Verify | 23 | 1,154 | 2,630 | 1k+ | Non-prefixed global variable | ||
| #364 | EazyDocs – AI Powered Knowledge Base, Wiki, Documentation & FAQ Builder | 23 | 355 | 1,541 | 2k+ | Non-prefixed global variable | ||
| #365 | Ecwid by Lightspeed Ecommerce Shopping Cart | 23 | 339 | 307 | 20k+ | Missing direct file access protection | ||
| #366 | ElementsReady Addons for Elementor | 23 | 231 | 666 | 3k+ | Non-prefixed global variable | ||
| #367 | Error Log Monitor | 23 | 694 | 1,414 | 20k+ | Non-prefixed global variable | ||
| #368 | Essential Real Estate | 23 | 529 | 5,060 | 8k+ | Non-prefixed global variable | ||
| #369 | EventON – Events Calendar | 23 | 2,585 | 1,021 | 6k+ | Text Domain Mismatch | ||
| #370 | Events Addon for Elementor | 23 | 779 | 1,339 | 7k+ | Non-prefixed global variable | ||
| #371 | Everest Forms – Contact Form, Payment Form, Quiz, Survey & Custom Form Builder with AI | 23 | 395 | 1,342 | 90k+ | Non-prefixed global variable | ||
| #372 | Spreadsheet Price Changer for WooCommerce and WP E-commerce – Light | 23 | 386 | 999 | 400 | Non-prefixed global variable | ||
| #373 | Ezoic | 23 | 432 | 516 | 10k+ | Output is not escaped | ||
| #374 | Fastcache by Host.it | 23 | 1,327 | 203 | 800 | Text Domain Mismatch | ||
| #375 | Featured Images in RSS for Mailchimp & More | 23 | 780 | 1,299 | 20k+ | Non-prefixed global variable | ||
| #376 | Feed Them Social – Social Media Feeds, Video, and Photo Galleries | 23 | 563 | 535 | 20k+ | Output is not escaped | ||
| #377 | Filr – Secure document library | 23 | 775 | 1,317 | 700 | Non-prefixed global variable | ||
| #378 | Finpose – Accounting for WooCommerce | 23 | 1,649 | 1,307 | 400 | Non-prefixed global variable | ||
| #379 | Image Photo Gallery Final Tiles Grid | 23 | 578 | 1,502 | 20k+ | Non-prefixed global variable | ||
| #380 | Five-Star Ratings Shortcode | 23 | 604 | 1,317 | 600 | Non-prefixed global variable | ||
| #381 | Flexmls® IDX Plugin | 23 | 1,268 | 957 | 1k+ | Output is not escaped | ||
| #382 | Form Maker by 10Web – Mobile-Friendly Drag & Drop Contact Form Builder | 23 | 4,746 | 1,279 | 30k+ | Non Singular String Literal Domain | ||
| #383 | Freshdesk (official) | 23 | 194 | 386 | 800 | Non-prefixed function | ||
| #384 | Front End PM | 23 | 978 | 2,264 | 5k+ | Non-prefixed global variable | ||
| #385 | Tracking and Consent Manager – WP Full Picture | 23 | 1,280 | 3,223 | 3k+ | Non-prefixed global variable | ||
| #386 | Futurio Extra | 23 | 787 | 205 | 20k+ | Text Domain Mismatch | ||
| #387 | FV Flowplayer Video Player | 23 | 1,311 | 1,454 | 20k+ | Output is not escaped | ||
| #388 | GAinWP Google Analytics Integration for WordPress | 23 | 525 | 176 | 8k+ | Output is not escaped | ||
| #389 | GamiPress – Gamification plugin to reward points, achievements, badges & ranks in WordPress | 23 | 3,621 | 2,744 | 10k+ | Output is not escaped | ||
| #390 | The GDPR Framework By Data443 | 23 | 1,287 | 517 | 10k+ | Short PHP open tag found | ||
| #391 | Anti-Malware Security and Brute-Force Firewall | 23 | 543 | 965 | 100k+ | Output is not escaped | ||
| #392 | Gmedia Photo Gallery | 23 | 350 | 1,121 | 7k+ | Non-prefixed global variable | ||
| #393 | Groovy Menu Plugin (Free) | 23 | 1,729 | 283 | 4k+ | Text Domain Mismatch | ||
| #394 | Groundhogg — CRM, Newsletters, and Marketing Automation | 23 | 136 | 921 | 2k+ | Non-prefixed global variable | ||
| #395 | Gutenberg | 23 | 605 | 327 | 300k+ | Missing direct file access protection | ||
| #396 | Interactive Content – H5P | 23 | 565 | 380 | 40k+ | Non Singular String Literal Domain | ||
| #397 | Happy Addons for Elementor | 23 | 573 | 444 | 400k+ | Output is not escaped | ||
| #398 | Houzez Property Feed | 23 | 1,464 | 1,585 | 1k+ | Text Domain Mismatch | ||
| #399 | Hunk Companion | 23 | 2,547 | 687 | 6k+ | Text Domain Mismatch | ||
| #400 | Ibtana – Ecommerce Product Addons | 23 | 1,547 | 1,718 | 6k+ | Non Singular String Literal Domain |