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 | Menubar | 39 | 171 | 46 | 1k+ | Output is not escaped | ||
| #352 | Open Graph Pro | 39 | 52 | 13 | 1k+ | Output is not escaped | ||
| #353 | Quantcast Choice | 39 | 227 | 11 | 3k+ | Text Domain Mismatch | ||
| #354 | Scripts n Styles | 39 | 150 | 92 | 30k+ | Output is not escaped | ||
| #355 | SEO Friendly Images | 39 | 292 | 20 | 20k+ | Output is not escaped | ||
| #356 | Simple Staff List | 39 | 90 | 236 | 3k+ | Non-prefixed global variable | ||
| #357 | Solid Post Likes | 39 | 96 | 52 | 500 | Text Domain Mismatch | ||
| #358 | Combo Offers WooCommerce | 39 | 38 | 89 | 2k+ | Missing nonce verification | ||
| #359 | WP Performance Score Booster – Optimize Speed, Enable Cache & Page Preload | 39 | 59 | 27 | 10k+ | Unsafe printing function | ||
| #360 | Yandex Metrica | 39 | 92 | 46 | 20k+ | Output is not escaped | ||
| #361 | You can quote me on that | 39 | 57 | 37 | 500 | Output is not escaped | ||
| #362 | Advanced Admin Search | 40 | 79 | 48 | 600 | Non Singular String Literal Text | ||
| #363 | Duplicate Page | 40 | 39 | 43 | 3m+ | Unsafe printing function | ||
| #364 | Payment Gateway of PayPal for WooCommerce | 40 | 44 | 173 | 7k+ | Nonce verification recommended | ||
| #365 | iNext Woo Pincode Checker | 40 | 36 | 82 | 700 | Missing nonce verification | ||
| #366 | Quotes Addon for GetPaid | 40 | 191 | 21 | 700 | Text Domain Mismatch | ||
| #367 | Monkeyman Rewrite Analyzer | 40 | 89 | 10 | 2k+ | Non Singular String Literal Domain | ||
| #368 | 코드엠샵 소셜톡 | 40 | 47 | 36 | 400 | Output is not escaped | ||
| #369 | List Petfinder Pets | 40 | 121 | 46 | 400 | Output is not escaped | ||
| #370 | Search Live | 40 | 132 | 71 | 600 | Output is not escaped | ||
| #371 | CPS | Age Verification | 40 | 127 | 35 | 900 | Unsafe printing function | ||
| #372 | Duplicate Page and Post | 41 | 26 | 21 | 80k+ | Unsafe printing function | ||
| #373 | Hide WP Admin Login | 41 | 23 | 39 | 500 | Nonce verification recommended | ||
| #374 | Page Specific Menu Items | 41 | 78 | 19 | 2k+ | Output is not escaped | ||
| #375 | Passwordless Login | 41 | 40 | 24 | 1k+ | Output is not escaped | ||
| #376 | BP Auto Group Join | 42 | 55 | 55 | 700 | Output is not escaped | ||
| #377 | Display Categories Widget | 42 | 90 | 4 | 3k+ | Output is not escaped | ||
| #378 | PAYDUNYA WOOCOMMERCE PAR | 42 | 54 | 32 | 600 | Text Domain Mismatch | ||
| #379 | PE Easy Slider | 42 | 190 | 10 | 800 | Output is not escaped | ||
| #380 | Simple Googlebot Visit | 42 | 32 | 67 | 1k+ | Non Singular String Literal Domain | ||
| #381 | Post Carousel Slider for Elementor | 43 | 133 | 23 | 3k+ | Text Domain Mismatch | ||
| #382 | Button visually impaired | 44 | 145 | 5 | 10k+ | Text Domain Mismatch | ||
| #383 | Code Widget | 44 | 60 | 33 | 4k+ | Text Domain Mismatch | ||
| #384 | ELEX WooCommerce Role Based Pricing | 44 | 213 | 196 | 2k+ | Non-prefixed global variable | ||
| #385 | WP Club Manager – WordPress Sports Club Plugin | 44 | 171 | 682 | 600 | Non-prefixed global variable | ||
| #386 | Easy HTML Sitemap | 45 | 75 | 8 | 600 | Text Domain Mismatch | ||
| #387 | Outdooractive Embed | 45 | 70 | 18 | 400 | Text Domain Mismatch | ||
| #388 | Logo Slider – Logo Carousel, Client Logo Slider & Brand Showcase for WordPress | 46 | 16 | 247 | 10k+ | Non-prefixed global variable | ||
| #389 | Ultimate FAQ Solution | 46 | 285 | 97 | 600 | Text Domain Mismatch | ||
| #390 | Better Block Patterns | 48 | 77 | 11 | 1k+ | Missing direct file access protection | ||
| #391 | WP First Letter Avatar | 48 | 40 | 7 | 2k+ | Output is not escaped | ||
| #392 | HT Feed | 49 | 76 | 11 | 700 | Output is not escaped | ||
| #393 | Logo Carousel Slider | 49 | 102 | 14 | 6k+ | Non Singular String Literal Domain | ||
| #394 | ReCrawler | 49 | 10 | 40 | 4k+ | Direct Query | ||
| #395 | Video Background | 49 | 35 | 26 | 9k+ | Unsafe printing function | ||
| #396 | Table Addons for Elementor | 50 | 92 | 29 | 20k+ | wp function not compatible with requires wp | ||
| #397 | Helpie FAQ — Accordion, Docs & Knowledge Base | 54 | 96 | 89 | 9k+ | Nonce verification recommended | ||
| #398 | Marvy – Background Animations for Elementor | 55 | 63 | 34 | 4k+ | Text Domain Mismatch | ||
| #399 | Require Featured Image | 56 | 20 | 6 | 3k+ | Output is not escaped | ||
| #400 | PDF invoice for WP ERP | 58 | 96 | 134 | 2k+ | Non-prefixed global variable |