WordPress.WP.I18n.NoHtmlWrappedStrings
No Html Wrapped Strings
A translation or text-domain pattern does not match WordPress internationalization expectations.
Why It Shows Up
Plugin Check found missing text domains, mismatched domains, missing translator comments, variable-only strings, placeholder issues, or deprecated translation loading patterns.
Why It Matters
Translation issues make the plugin harder to localize and can break strings for non-English WordPress users.
How to Fix
- Use the plugin slug as the text domain unless the plugin intentionally declares a different one.
- Keep translatable strings literal and move variables into placeholders.
- Add translator comments before strings with placeholders or ambiguous context.
References
Affected Plugins
| Rank | Plugin | Score | Errors | Warnings | Installs | Added | Updated | Top Issue |
|---|---|---|---|---|---|---|---|---|
| #351 | Monkeyman Rewrite Analyzer | 40 | 89 | 10 | 1k+ | Non Singular String Literal Domain | ||
| #352 | 코드엠샵 소셜톡 | 40 | 47 | 36 | 400 | Output is not escaped | ||
| #353 | List Petfinder Pets | 40 | 121 | 46 | 400 | Output is not escaped | ||
| #354 | Search Live | 40 | 132 | 71 | 600 | Output is not escaped | ||
| #355 | CPS | Age Verification | 40 | 127 | 35 | 800 | Unsafe printing function | ||
| #356 | Duplicate Page and Post | 41 | 26 | 21 | 70k+ | Unsafe printing function | ||
| #357 | Payment Gateway of PayPal for WooCommerce | 41 | 44 | 184 | 7k+ | Nonce verification recommended | ||
| #358 | Hide WP Admin Login | 41 | 23 | 39 | 500 | Nonce verification recommended | ||
| #359 | Page Specific Menu Items | 41 | 78 | 19 | 2k+ | Output is not escaped | ||
| #360 | Passwordless Login | 41 | 40 | 24 | 1k+ | Output is not escaped | ||
| #361 | BP Auto Group Join | 42 | 55 | 55 | 700 | Output is not escaped | ||
| #362 | Display Categories Widget | 42 | 90 | 4 | 3k+ | Output is not escaped | ||
| #363 | PAYDUNYA WOOCOMMERCE PAR | 42 | 54 | 32 | 600 | Text Domain Mismatch | ||
| #364 | PE Easy Slider | 42 | 190 | 10 | 800 | Output is not escaped | ||
| #365 | Simple Googlebot Visit | 42 | 32 | 67 | 1k+ | Non Singular String Literal Domain | ||
| #366 | Logo Slider WP – Responsive Logo Carousel, Logo Gallery & Logo Showcase | 43 | 22 | 255 | 10k+ | Non-prefixed global variable | ||
| #367 | Post Carousel Slider for Elementor | 43 | 133 | 23 | 3k+ | Text Domain Mismatch | ||
| #368 | Button visually impaired | 44 | 145 | 5 | 10k+ | Text Domain Mismatch | ||
| #369 | Code Widget | 44 | 60 | 33 | 4k+ | Text Domain Mismatch | ||
| #370 | ELEX WooCommerce Role Based Pricing | 44 | 213 | 196 | 2k+ | Non-prefixed global variable | ||
| #371 | WP Club Manager – WordPress Sports Club Plugin | 44 | 171 | 682 | 600 | Non-prefixed global variable | ||
| #372 | Easy HTML Sitemap | 45 | 75 | 8 | 600 | Text Domain Mismatch | ||
| #373 | Outdooractive Embed | 45 | 70 | 18 | 400 | Text Domain Mismatch | ||
| #374 | Better Block Patterns | 48 | 77 | 11 | 1k+ | Missing direct file access protection | ||
| #375 | Virtuaria PagBank / PagSeguro for WooCommerce | 48 | 12 | 160 | 1k+ | Non-prefixed global variable | ||
| #376 | WP First Letter Avatar | 48 | 40 | 7 | 2k+ | Output is not escaped | ||
| #377 | HT Feed | 49 | 76 | 11 | 700 | Output is not escaped | ||
| #378 | Logo Carousel Slider | 49 | 102 | 14 | 6k+ | Non Singular String Literal Domain | ||
| #379 | ReCrawler | 49 | 10 | 40 | 4k+ | Direct Query | ||
| #380 | Video Background | 49 | 35 | 26 | 9k+ | Unsafe printing function | ||
| #381 | Table Addons for Elementor | 50 | 92 | 29 | 20k+ | wp function not compatible with requires wp | ||
| #382 | Post Blocks & Tools | 53 | 19 | 46 | 500 | Missing nonce verification | ||
| #383 | Helpie FAQ — Accordion, Docs & Knowledge Base | 54 | 96 | 89 | 9k+ | Nonce verification recommended | ||
| #384 | Marvy – Background Animations for Elementor | 55 | 63 | 34 | 4k+ | Text Domain Mismatch | ||
| #385 | Require Featured Image | 56 | 20 | 6 | 3k+ | Output is not escaped | ||
| #386 | Advanced Marquee Effect for Elementor – Smooth Marquee, News Ticker, Image Box & Icon Box Marquee | 57 | 23 | 10 | 2k+ | Output is not escaped | ||
| #387 | PDF invoice for WP ERP | 58 | 96 | 134 | 2k+ | Non-prefixed global variable | ||
| #388 | Rewrite Rules Inspector | 58 | 7 | 59 | 10k+ | Nonce verification recommended | ||
| #389 | Testimonial Carousel For Elementor | 59 | 40 | 56 | 10k+ | No Html Wrapped Strings | ||
| #390 | ELEX WooCommerce Catalog Mode | 61 | 97 | 49 | 10k+ | Text Domain Mismatch | ||
| #391 | Hide Admin Bar For User Roles | 61 | 38 | 10 | 500 | Output is not escaped | ||
| #392 | Simple User Avatar | 61 | 8 | 14 | 20k+ | Output is not escaped | ||
| #393 | Checkout Countdown for WooCommerce – Boost Conversions & Reduce Cart Abandonment | 62 | 43 | 12 | 2k+ | Output is not escaped | ||
| #394 | pensopay Payments v2 | 62 | 406 | 32 | 1k+ | Non Singular String Literal Domain | ||
| #395 | Standard Widget Extensions | 62 | 67 | 6 | 1k+ | Output is not escaped | ||
| #396 | Darkify – Dark Mode & Night Mode for Website & Admin (Dark Theme Included) | 64 | 2 | 167 | 600 | Non-prefixed global variable | ||
| #397 | Genesis Visual Hook Guide | 65 | 13 | 14 | 700 | Nonce verification recommended | ||
| #398 | T4B News Ticker – Responsive News Scroller, Slider, and Animations | 65 | 20 | 10 | 7k+ | Output is not escaped | ||
| #399 | WP Max Submit Protect | 65 | 19 | 12 | 400 | Output is not escaped | ||
| #400 | WP Scroll Depth | 66 | 29 | 9 | 1k+ | Output is not escaped |