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 |
|---|---|---|---|---|---|---|---|---|
| #651 | Force Sell for WooCommerce | 24 | 697 | 455 | 600 | Text Domain Mismatch | ||
| #652 | Formidable PRO2PDF | 24 | 218 | 477 | 1k+ | Non-prefixed global variable | ||
| #653 | Forminator Forms – Contact Form, Payment Form & Custom Form Builder | 24 | 826 | 1,314 | 600k+ | Non-prefixed global variable | ||
| #654 | Fuse Social Floating Sidebar | 24 | 1,838 | 1,578 | 10k+ | Non-prefixed global variable | ||
| #655 | FV Simpler SEO | 24 | 766 | 308 | 2k+ | Text Domain Mismatch | ||
| #656 | FV Player 8 | 24 | 323 | 1,383 | 1k+ | Non-prefixed function | ||
| #657 | Gallery by BestWebSoft – Customizable Image and Photo Galleries for WordPress | 24 | 536 | 322 | 10k+ | Text Domain Mismatch | ||
| #658 | GD Mail Queue | 24 | 502 | 582 | 700 | Output is not escaped | ||
| #659 | Cookie Banner for GDPR / CCPA – WPLP Cookie Consent | 24 | 1,214 | 1,924 | 9k+ | Non-prefixed global variable | ||
| #660 | Genealogical Tree – Family Tree & Ancestry for WordPress | 24 | 560 | 1,641 | 600 | Non-prefixed global variable | ||
| #661 | GEO my WP | 24 | 554 | 2,091 | 3k+ | Non-prefixed hook name | ||
| #662 | GG Woo Feed for WooCommerce Shopping Feed on Google and Other Channels | 24 | 469 | 592 | 1k+ | Non-prefixed global variable | ||
| #663 | Connector Wizard (formerly LC Wizard) | 24 | 249 | 448 | 1k+ | Non-prefixed function | ||
| #664 | Assets manager, dequeue scripts, dequeue styles for WordPress | 24 | 592 | 255 | 2k+ | Output is not escaped | ||
| #665 | Simple Calendar – Google Calendar Plugin | 24 | 2,053 | 592 | 50k+ | Missing direct file access protection | ||
| #666 | Easy Google Maps | 24 | 1,764 | 389 | 20k+ | Non Singular String Literal Domain | ||
| #667 | Grid/List View for WooCommerce | 24 | 1,116 | 546 | 2k+ | Output is not escaped | ||
| #668 | GS Behance Portfolio – Display Projects, Gallery & Slider | 24 | 855 | 1,617 | 400 | Non-prefixed global variable | ||
| #669 | Hide Shipping Method For WooCommerce | 24 | 946 | 1,447 | 10k+ | Non-prefixed global variable | ||
| #670 | HT Mega Addons for Elementor – Elementor Widgets & Template Builder | 24 | 12,352 | 1,474 | 70k+ | Text Domain Mismatch | ||
| #671 | Hummingbird Performance – Cache & Page Speed Optimization for Core Web Vitals | Critical CSS | Minify CSS | Defer CSS Javascript | CDN | 24 | 3,410 | 866 | 70k+ | Text Domain Mismatch | ||
| #672 | Import from YML | 24 | 97 | 306 | 400 | Non-prefixed global variable | ||
| #673 | Import and export users and customers | 24 | 1,040 | 357 | 70k+ | Unsafe printing function | ||
| #674 | Infinite Uploads – Offload Media and Video to Cloud Storage | 24 | 586 | 722 | 800 | Direct Query | ||
| #675 | Keap Official Opt-in Forms | 24 | 829 | 1,046 | 1k+ | Non-prefixed global variable | ||
| #676 | Social Slider Feed – Social Media Feed & Gallery Widgets | 24 | 929 | 707 | 20k+ | Non-prefixed global variable | ||
| #677 | InstaWP Connect – 1-click WP Staging & Migration | 24 | 253 | 811 | 40k+ | Non-prefixed global variable | ||
| #678 | Dynamics 365 Integration | 24 | 383 | 166 | 600 | Output is not escaped | ||
| #679 | Joli Table Of Contents | 24 | 653 | 1,755 | 7k+ | Non-prefixed global variable | ||
| #680 | Kenta Blocks – Responsive Blocks and block templates library | 24 | 564 | 1,405 | 2k+ | Non-prefixed global variable | ||
| #681 | KiviCare – Clinic & Patient Management System (EHR) | 24 | 223 | 880 | 2k+ | Direct Query | ||
| #682 | Appointment Booking Plugin – LatePoint | Calendar & Scheduling for WordPress | 24 | 1,855 | 953 | 100k+ | Output is not escaped | ||
| #683 | LearnPress – Backup & Migration Tool | 24 | 385 | 469 | 5k+ | Output is not escaped | ||
| #684 | LifterLMS – WP LMS for eLearning, Online Courses, & Quizzes | 24 | 414 | 1,176 | 10k+ | Non-prefixed global variable | ||
| #685 | Load More Products for WooCommerce | 24 | 731 | 459 | 20k+ | Text Domain Mismatch | ||
| #686 | Local Delivery Drivers for WooCommerce | 24 | 1,832 | 1,483 | 900 | Non-prefixed global variable | ||
| #687 | Event Booking Manager for WooCommerce – Registration, RSVP, Calendar & Tickets | 24 | 969 | 2,140 | 7k+ | Non-prefixed global variable | ||
| #688 | Generate Images (AI) – Magic Post Thumbnail | 24 | 1,940 | 1,761 | 6k+ | Non-prefixed global variable | ||
| #689 | Mail Mint – Email Marketing, Newsletter, Email Automation & WooCommerce Emails | 24 | 4,696 | 1,480 | 5k+ | Text Domain Mismatch | ||
| #690 | Mailchimp for WooCommerce | 24 | 523 | 663 | 200k+ | Non-prefixed global variable | ||
| #691 | MailerPress – Newsletter, email marketing & AI automation | 24 | 805 | 3,931 | 1k+ | Direct Query | ||
| #692 | Mailjet Email Marketing | 24 | 435 | 206 | 10k+ | Unsafe printing function | ||
| #693 | Mang Board WP | 24 | 1,213 | 4,720 | 9k+ | Non-prefixed global variable | ||
| #694 | Admin Tweaks | 24 | 1,507 | 206 | 900 | Text Domain Mismatch | ||
| #695 | Marketing Automation | 24 | 440 | 677 | 600 | Non-prefixed global variable | ||
| #696 | Mass Pages/Posts Creator | 24 | 736 | 1,364 | 1k+ | Non-prefixed global variable | ||
| #697 | Media Library Folders | 24 | 889 | 807 | 10k+ | Text Domain Mismatch | ||
| #698 | Min and Max Quantity for WooCommerce | 24 | 603 | 459 | 20k+ | Text Domain Mismatch | ||
| #699 | Receive customer payments on Woocommerce | 24 | 549 | 1,419 | 1k+ | Non-prefixed global variable | ||
| #700 | Timetable and Event Schedule by MotoPress | 24 | 456 | 232 | 30k+ | Output is not escaped |