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 |
|---|---|---|---|---|---|---|---|---|
| #3051 | Custom Product Tabs for WooCommerce WP All Import Add-on | 65 | 18 | 18 | 1k+ | Non-prefixed global variable | ||
| #3052 | Custom Share Buttons with Floating Sidebar | 65 | 164 | 20 | 4k+ | Text Domain Mismatch | ||
| #3053 | Cyr to Lat Reloaded – Transliteration of Links and File Names | 65 | 13 | 36 | 30k+ | Direct Query | ||
| #3054 | Dojo for WooCommerce | 65 | 71 | 13 | 800 | Text Domain Mismatch | ||
| #3055 | Easy Twitter Feed Widget Plugin | 65 | 90 | 15 | 10k+ | Text Domain Mismatch | ||
| #3056 | EDD Hide Download | 65 | 13 | 13 | 600 | Output is not escaped | ||
| #3057 | Featured Galleries | 65 | 15 | 10 | 3k+ | Output is not escaped | ||
| #3058 | Futy.io Leadbots | 65 | 73 | 9 | 2k+ | wp function not compatible with requires wp | ||
| #3059 | Genesis Visual Hook Guide | 65 | 13 | 14 | 700 | Nonce verification recommended | ||
| #3060 | WP All Import – Import SEO Settings for All In One SEO | 65 | 19 | 11 | 900 | Output is not escaped | ||
| #3061 | Integration for Elementor forms – Sendinblue | 65 | 94 | 56 | 7k+ | Text Domain Mismatch | ||
| #3062 | Bitrix24 | 65 | 28 | 10 | 500 | Text Domain Mismatch | ||
| #3063 | Product Image and Video Gallery Slider for WooCommerce | 65 | 13 | 7 | 700 | Output is not escaped | ||
| #3064 | Read More Excerpt Link | 65 | 19 | 8 | 3k+ | Output is not escaped | ||
| #3065 | SocketLabs | 65 | 15 | 18 | 900 | Output is not escaped | ||
| #3066 | WebberZone Top 10 — Popular Posts | 65 | 37 | 179 | 10k+ | Database parameter is not escaped | ||
| #3067 | User Last Login | 65 | 27 | 5 | 600 | Output is not escaped | ||
| #3068 | Web and WooCommerce Addons for WPBakery Builder | 65 | 497 | 123 | 1k+ | Text Domain Mismatch | ||
| #3069 | Add to Cart Text Changer and Customize Button, Add Custom Icon | 65 | 87 | 18 | 2k+ | Text Domain Mismatch | ||
| #3070 | AI Product Gallery Slider for WooCommerce, Product Image Zoom, Product Video, Additional Variation Images Gallery – WPBean | 65 | 264 | 16 | 1k+ | Text Domain Mismatch | ||
| #3071 | Ajaxify Comments – Ajax and Lazy Loading Comments | 65 | 20 | 38 | 3k+ | Non-prefixed hook name | ||
| #3072 | ACF RGBA Color Picker | 66 | 37 | 3 | 6k+ | Text Domain Mismatch | ||
| #3073 | CP Media Player – Audio Player and Video Player | 66 | 224 | 48 | 3k+ | Text Domain Mismatch | ||
| #3074 | WPAdmin AWS CDN | 66 | 161 | 42 | 400 | Text Domain Mismatch | ||
| #3075 | Bopo – WooCommerce Product Bundle Builder | 66 | 137 | 135 | 1k+ | Text Domain Mismatch | ||
| #3076 | Calculated fields for ACF | 66 | 5 | 18 | 1k+ | Non-prefixed global variable | ||
| #3077 | Custom Posts Per Page | 66 | 20 | 2 | 900 | Unsafe printing function | ||
| #3078 | Custom Posts Per Page Reloaded | 66 | 40 | 3 | 700 | Text Domain Mismatch | ||
| #3079 | No Right Click, Content Copy Protection, Disable Right Click by RB | 66 | 23 | 2 | 600 | Unsafe printing function | ||
| #3080 | Elementic | 66 | 22 | 9 | 900 | Text Domain Mismatch | ||
| #3081 | IranDargah Payment Gateway for Woocommerce | 66 | 66 | 26 | 400 | Text Domain Mismatch | ||
| #3082 | Link Widget Title | 66 | 22 | 5 | 4k+ | Output is not escaped | ||
| #3083 | PopBox For Elementor | 66 | 31 | 9 | 3k+ | Output is not escaped | ||
| #3084 | Plugin Compatibility Checker | 66 | 73 | 18 | 9k+ | Text Domain Mismatch | ||
| #3085 | Shortcode for Current Date | 66 | 27 | 12 | 10k+ | Text Domain Mismatch | ||
| #3086 | TAO Schedule Update | 66 | 37 | 11 | 2k+ | Text Domain Mismatch | ||
| #3087 | User Profile Picture | 66 | 9 | 8 | 4k+ | Missing nonce verification | ||
| #3088 | Ajax add to cart for WooCommerce | 66 | 67 | 31 | 10k+ | Text Domain Mismatch | ||
| #3089 | Video Popup for Elementor – WPTD | 66 | 33 | 13 | 1k+ | Output is not escaped | ||
| #3090 | Address correction autocomplete for Woo | 67 | 19 | 9 | 1k+ | Text Domain Mismatch | ||
| #3091 | Raptive Ads | 67 | 34 | 31 | 6k+ | Text Domain Mismatch | ||
| #3092 | Affiliates Manager Google reCAPTCHA Integration | 67 | 18 | 10 | 400 | Request data is not unslashed | ||
| #3093 | Awesome Contact Form7 for Elementor | 67 | 20 | 30 | 7k+ | Non-prefixed global variable | ||
| #3094 | Breadcrumbs Divi Module | 67 | 44 | 38 | 10k+ | Text Domain Mismatch | ||
| #3095 | CCM19 Integration | 67 | 14 | 13 | 4k+ | Nonce verification recommended | ||
| #3096 | Dynamic Text Field For Contact Form 7 | 67 | 20 | 7 | 1k+ | Unsafe printing function | ||
| #3097 | Editoria11y Accessibility Checker | 67 | 69 | 55 | 1k+ | Text Domain Mismatch | ||
| #3098 | GravityExport Lite for Gravity Forms | 67 | 48 | 14 | 10k+ | Output is not escaped | ||
| #3099 | Hide Plugins | 67 | 7 | 15 | 1k+ | Nonce verification recommended | ||
| #3100 | Kraken.io Image Optimizer – Compress, Convert to WebP & AVIF, Resize & Bulk Optimize | 67 | 293 | 80 | 9k+ | Text Domain Mismatch |