WordPress.WP.I18n.TextDomainMismatch
Text Domain Mismatch
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 |
|---|---|---|---|---|---|---|---|---|
| #1001 | Plugin BlueX for WooCommerce | 29 | 431 | 216 | 2k+ | Text Domain Mismatch | ||
| #1002 | BNE Testimonials | 29 | 521 | 102 | 1k+ | Output is not escaped | ||
| #1003 | Order Delivery Date Time & Pickup for WooCommerce | 29 | 667 | 244 | 500 | Output is not escaped | ||
| #1004 | Businessx Extensions | 29 | 337 | 529 | 1k+ | Non-prefixed function | ||
| #1005 | Integration for Salesforce and Contact Form 7, WPForms, Elementor, Formidable, Ninja Forms | 29 | 236 | 369 | 2k+ | Non-prefixed global variable | ||
| #1006 | Chained Quiz | 29 | 1,132 | 721 | 1k+ | Text Domain Mismatch | ||
| #1007 | Countdown, Coming Soon, Maintenance – Countdown & Clock | 29 | 1,735 | 143 | 10k+ | Non Singular String Literal Domain | ||
| #1008 | DB Cache Reloaded Fix | 29 | 133 | 42 | 2k+ | Output is not escaped | ||
| #1009 | Di Themes Demo Site Importer | 29 | 343 | 183 | 1k+ | Text Domain Mismatch | ||
| #1010 | Display Tweets | 29 | 135 | 135 | 900 | Non-prefixed global variable | ||
| #1011 | Interactive Image Map Plugin – Draw Attention | 29 | 620 | 227 | 20k+ | Output is not escaped | ||
| #1012 | ECPay Ecommerce for WooCommerce | 29 | 248 | 370 | 2k+ | Missing nonce verification | ||
| #1013 | Everest Toolkit | 29 | 145 | 141 | 1k+ | Missing Translators Comment | ||
| #1014 | Gianism | 29 | 391 | 154 | 700 | Text Domain Mismatch | ||
| #1015 | reCaptcha by BestWebSoft | 29 | 474 | 272 | 100k+ | Text Domain Mismatch | ||
| #1016 | Easy HTTPS Redirection (SSL) | 29 | 266 | 152 | 100k+ | Unsafe printing function | ||
| #1017 | Integration for Pipedrive and Contact Form 7, WPForms, Elementor, Ninja Forms | 29 | 625 | 351 | 1k+ | Text Domain Mismatch | ||
| #1018 | Interactive World Map | 29 | 684 | 341 | 1k+ | Text Domain Mismatch | ||
| #1019 | Jetpack Boost – Website Speed, Performance and Critical CSS | 29 | 659 | 247 | 200k+ | Text Domain Mismatch | ||
| #1020 | Wishlist for WooCommerce | 29 | 610 | 296 | 600 | Output is not escaped | ||
| #1021 | Kits, Templates and Patterns | 29 | 380 | 91 | 5k+ | Text Domain Mismatch | ||
| #1022 | Liteweight Podcast – Host and Embed Podcast Episodes | 29 | 536 | 239 | 500 | Output is not escaped | ||
| #1023 | Meow Gallery | 29 | 113 | 182 | 10k+ | Direct Query | ||
| #1024 | miniOrange Social Login and Register (Discord, Google, Twitter, LinkedIn) | 29 | 92 | 898 | 10k+ | Request data is not unslashed | ||
| #1025 | Page Restrict for WooCommerce | 29 | 579 | 374 | 700 | Text Domain Mismatch | ||
| #1026 | Page View Count | 29 | 106 | 246 | 10k+ | Dynamic hook name | ||
| #1027 | PlatiOnline Payments | 29 | 304 | 110 | 700 | Output is not escaped | ||
| #1028 | Post Timeline | 29 | 91 | 200 | 800 | Missing nonce verification | ||
| #1029 | Pósturinn\'s Shipping with WooCommerce | 29 | 713 | 551 | 500 | Text Domain Mismatch | ||
| #1030 | Recipe Card Blocks Lite | 29 | 151 | 408 | 10k+ | Non-prefixed global variable | ||
| #1031 | Relevant – Related, Featured, Latest, and Popular Posts by BestWebSoft | 29 | 487 | 262 | 800 | Text Domain Mismatch | ||
| #1032 | Responder | 29 | 77 | 185 | 3k+ | Non-prefixed global variable | ||
| #1033 | SamedayCourier Shipping | 29 | 336 | 269 | 4k+ | Non Singular String Literal Domain | ||
| #1034 | Sender – Newsletter, SMS and Email Marketing Automation for WooCommerce | 29 | 148 | 245 | 5k+ | Unsafe printing function | ||
| #1035 | Slider by BestWebSoft | 29 | 478 | 336 | 400 | Text Domain Mismatch | ||
| #1036 | Social Engine | 29 | 133 | 90 | 600 | Exception output is not escaped | ||
| #1037 | BuddyPress Builder for Elementor – BuddyBuilder | 29 | 348 | 329 | 1k+ | Text Domain Mismatch | ||
| #1038 | SureForms – Drag & Drop Contact Form & Form Builder, Payment Form, Survey, Quiz & Calculator | 29 | 336 | 198 | 500k+ | Text Domain Mismatch | ||
| #1039 | SureMembers – Membership & Content Restriction Plugin | 29 | 359 | 248 | 1k+ | Text Domain Mismatch | ||
| #1040 | Themify Popup | 29 | 232 | 108 | 8k+ | Text Domain Mismatch | ||
| #1041 | Themify – WooCommerce Product Filter | 29 | 643 | 145 | 20k+ | Output is not escaped | ||
| #1042 | Tilda-publishing | 29 | 219 | 78 | 700 | Output is not escaped | ||
| #1043 | Post Grid Gutenberg Blocks – PostX | 29 | 118 | 404 | 40k+ | Non-prefixed global variable | ||
| #1044 | Under Construction, Coming Soon & Maintenance Mode | 29 | 277 | 292 | 10k+ | Text Domain Mismatch | ||
| #1045 | Wenprise Alipay Gateway For WooCommerce | 29 | 113 | 68 | 700 | Exception output is not escaped | ||
| #1046 | Countdown Timer – Widget Countdown | 29 | 290 | 152 | 10k+ | Output is not escaped | ||
| #1047 | Widget for Yelp Reviews | 29 | 147 | 158 | 2k+ | Output is not escaped | ||
| #1048 | Product Carousel Slider & Grid Ultimate for WooCommerce | 29 | 719 | 122 | 6k+ | Text Domain Mismatch | ||
| #1049 | Global Payments SecureSubmit Gateway | 29 | 199 | 443 | 500 | Non-prefixed class | ||
| #1050 | Woostify Sites Library | 29 | 229 | 198 | 20k+ | Text Domain Mismatch |