WordPress.WP.I18n.NonSingularStringLiteralSingle
Non Singular String Literal Single
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 |
|---|---|---|---|---|---|---|---|---|
| #51 | SureForms – Contact Form Builder, AI Forms, Payment Form, Survey & Quiz | 29 | 337 | 198 | 500k+ | Text Domain Mismatch | ||
| #52 | Urvanov Syntax Highlighter | 30 | 221 | 87 | 3k+ | Output is not escaped | ||
| #53 | DirectoryPress Frontend | 31 | 402 | 563 | 800 | Non-prefixed global variable | ||
| #54 | DEPRECATED – Shipmondo – A complete shipping solution for WooCommerce | 32 | 166 | 119 | 5k+ | Output is not escaped | ||
| #55 | PublishPress Checklists: Pre-Publishing Approval Checklist – Validate Post Requirements | 33 | 140 | 182 | 3k+ | Missing Translators Comment | ||
| #56 | Quick Restaurant Reservations | 33 | 654 | 179 | 500 | Text Domain Mismatch | ||
| #57 | Cornerstone | 34 | 161 | 174 | 30k+ | Nonce verification recommended | ||
| #58 | Gum Addon for Elementor | 35 | 660 | 72 | 50k+ | Text Domain Mismatch | ||
| #59 | xili-tidy-tags | 35 | 224 | 157 | 1k+ | Output is not escaped | ||
| #60 | ShopEngine Elementor WooCommerce Builder Addon – All in One WooCommerce Solution | 36 | 63 | 669 | 100k+ | Non-prefixed global variable | ||
| #61 | WP fail2ban Blocklist | 36 | 61 | 63 | 3k+ | SQL query is not prepared | ||
| #62 | HT Builder – WordPress Theme Builder for Elementor | 37 | 142 | 41 | 1k+ | Output is not escaped | ||
| #63 | Ultimate Tag Cloud Widget | 37 | 715 | 16 | 4k+ | Output is not escaped | ||
| #64 | QR Redirector | 39 | 48 | 54 | 4k+ | Output is not escaped | ||
| #65 | Total Sales Counts for WooCommerce | 40 | 121 | 62 | 700 | SQL query is not prepared | ||
| #66 | Reusable Blocks Extended | 42 | 38 | 15 | 20k+ | Output is not escaped | ||
| #67 | FakerPress | 52 | 66 | 155 | 10k+ | Non-prefixed global variable | ||
| #68 | Simple Blog Stats | 53 | 25 | 76 | 4k+ | Non-prefixed function | ||
| #69 | Dashboard Wordcount | 72 | 30 | 7 | 500 | Output is not escaped |