WordPress.WP.I18n.NonSingularStringLiteralDomain
Non Singular String Literal Domain
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 |
|---|---|---|---|---|---|---|---|---|
| #401 | Live Copy Paste for Elementor – Cross Domain Copy Paste & Page Duplicator | 43 | 12 | 32 | 7k+ | Request data is not unslashed | ||
| #402 | reCAPTCHA for MW WP Form | 43 | 37 | 14 | 30k+ | Non Singular String Literal Domain | ||
| #403 | Buttonizer – Live Chat, AI Chatbot, Call, Chat, Contact Button | 44 | 24 | 71 | 50k+ | Non-prefixed constant | ||
| #404 | Code Widget | 44 | 60 | 33 | 4k+ | Text Domain Mismatch | ||
| #405 | WCFM – WCFM Marketplace integrate Elementor | 44 | 82 | 18 | 1k+ | Output is not escaped | ||
| #406 | Evergreen Countdown Timer | 45 | 193 | 35 | 2k+ | wp function not compatible with requires wp | ||
| #407 | Passwords Evolved | 45 | 26 | 17 | 1k+ | Output is not escaped | ||
| #408 | Link in Bio Creator – Social | 46 | 52 | 36 | 2k+ | Non Singular String Literal Domain | ||
| #409 | WP All Import – Import SEO Settings for Yoast SEO | 46 | 19 | 26 | 20k+ | Nonce verification recommended | ||
| #410 | Custom Background Changer | 47 | 44 | 14 | 1k+ | Non Singular String Literal Domain | ||
| #411 | Tag Pilot FREE – Google Tag Manager Integration for WooCommerce | 48 | 35 | 19 | 1k+ | Output is not escaped | ||
| #412 | Add LinkedIn Insight Tag for LinkedIn Ads | 48 | 129 | 23 | 5k+ | Non Singular String Literal Domain | ||
| #413 | Super Simple Google Analytics | 48 | 55 | 3 | 2k+ | Output is not escaped | ||
| #414 | Confirm Plus Contact Form 7 | 49 | 19 | 36 | 7k+ | Non Singular String Literal Domain | ||
| #415 | Logo Carousel Slider | 49 | 102 | 14 | 6k+ | Non Singular String Literal Domain | ||
| #416 | Advanced Custom Fields – Taxonomy Field add-on | 50 | 57 | 4 | 1k+ | Non Singular String Literal Domain | ||
| #417 | Adjust Admin Categories | 51 | 30 | 12 | 10k+ | Output is not escaped | ||
| #418 | Full Screen Background | 52 | 24 | 26 | 2k+ | Missing direct file access protection | ||
| #419 | Starbox – the Author Box for Humans | 52 | 144 | 19 | 10k+ | Non Singular String Literal Domain | ||
| #420 | Connect Contact Form 7 and Mailchimp | 53 | 236 | 52 | 40k+ | Text Domain Mismatch | ||
| #421 | Gravity Forms + Custom Post Types | 54 | 44 | 7 | 10k+ | Output is not escaped | ||
| #422 | Helpie FAQ — Accordion, Docs & Knowledge Base | 54 | 96 | 89 | 9k+ | Nonce verification recommended | ||
| #423 | Quick and Easy Testimonials | 54 | 63 | 32 | 3k+ | Non Singular String Literal Domain | ||
| #424 | Enhanced Category Pages | 55 | 23 | 25 | 2k+ | Direct Query | ||
| #425 | Holded integration | 55 | 72 | 23 | 2k+ | Non Singular String Literal Domain | ||
| #426 | Page Animations And Transitions | 55 | 89 | 67 | 1k+ | Non Singular String Literal Domain | ||
| #427 | Image Optimization For SEO | 56 | 116 | 69 | 3k+ | Non Singular String Literal Domain | ||
| #428 | TableKit: Table Builder Blocks for Gutenberg | 56 | 80 | 20 | 2k+ | Missing Translators Comment | ||
| #429 | WP Clean Admin Menu | 56 | 29 | 11 | 2k+ | Output is not escaped | ||
| #430 | Timologia for WooCommerce | 57 | 75 | 22 | 3k+ | Text Domain Mismatch | ||
| #431 | View Admin As | 58 | 307 | 135 | 9k+ | Non Singular String Literal Domain | ||
| #432 | Cloak Affiliate Links for WooCommerce | 58 | 28 | 6 | 2k+ | Non Singular String Literal Domain | ||
| #433 | Post Duplicator | 60 | 33 | 24 | 200k+ | Missing direct file access protection | ||
| #434 | Disable Right Click For WP | 61 | 15 | 12 | 10k+ | Missing nonce verification | ||
| #435 | Standard Widget Extensions | 62 | 67 | 6 | 1k+ | Output is not escaped | ||
| #436 | Inline Related Posts | 64 | 17 | 39 | 100k+ | Nonce verification recommended | ||
| #437 | Master Post Advert | 64 | 26 | 4 | 1k+ | Unsafe printing function | ||
| #438 | Moosend Website Connector | 64 | 15 | 12 | 1k+ | Non Singular String Literal Domain | ||
| #439 | WP Change Default From Email | 65 | 51 | 7 | 10k+ | Non Singular String Literal Domain | ||
| #440 | Flexible Product Fields (WooCommerce Product Addons) – WooCommerce Product Page Editor | 66 | 59 | 98 | 10k+ | Non-prefixed global variable | ||
| #441 | Easy Media Replace | 67 | 16 | 14 | 1k+ | Output is not escaped | ||
| #442 | GravityExport Lite for Gravity Forms | 67 | 48 | 14 | 10k+ | Output is not escaped | ||
| #443 | WP Post Branches | 67 | 16 | 12 | 4k+ | Nonce verification recommended | ||
| #444 | wp-Typography | 67 | 91 | 33 | 20k+ | Missing direct file access protection | ||
| #445 | SlingBlocks – Gutenberg Blocks by FunnelKit (Formerly WooFunnels) | 69 | 17 | 952 | 6k+ | Non-prefixed global variable | ||
| #446 | WP Original Media Path | 69 | 35 | 3 | 6k+ | Non Singular String Literal Domain | ||
| #447 | Custom Currency for WooCommerce | 70 | 63 | 5 | 2k+ | Missing direct file access protection | ||
| #448 | Quick and Easy FAQs | 70 | 93 | 9 | 10k+ | Non Singular String Literal Domain | ||
| #449 | Download Manager Addons for Elementor | 70 | 272 | 13 | 6k+ | Non Singular String Literal Domain | ||
| #450 | WP Widget in Navigation | 71 | 37 | 15 | 3k+ | Non Singular String Literal Domain |