textdomain_mismatch
textdomain 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 |
|---|---|---|---|---|---|---|---|---|
| #1 | Live Shopping & Shoppable Videos For WooCommerce | 0 | 79 | 174 | 400 | Non-prefixed global variable | ||
| #2 | Themify Builder | 9 | 5,334 | 2,171 | 5k+ | Text Domain Mismatch | ||
| #3 | MDTF – Meta Data and Taxonomies Filter | 16 | 1,550 | 1,956 | 1k+ | Non-prefixed global variable | ||
| #4 | Efí Bank | 17 | 886 | 553 | 400 | Exception output is not escaped | ||
| #5 | WPtouch – Make your WordPress Website Mobile-Friendly | 17 | 1,466 | 325 | 50k+ | Text Domain Mismatch | ||
| #6 | Element Pack Addons for Elementor – Elementor Widgets, Elementor Templates, Elementor Addons | 19 | 10,340 | 360 | 100k+ | Text Domain Mismatch | ||
| #7 | JetFormBuilder — Dynamic Blocks Form Builder | 19 | 2,103 | 1,605 | 80k+ | Text Domain Mismatch | ||
| #8 | Verified Reviews (Avis Vérifiés) | 19 | 671 | 1,136 | 700 | Non-prefixed global variable | ||
| #9 | Membership Plugin – Kadence Memberships | 19 | 5,083 | 2,982 | 9k+ | Text Domain Mismatch | ||
| #10 | WPJAM Basic | 19 | 325 | 346 | 4k+ | Output is not escaped | ||
| #11 | Event Organiser | 20 | 1,104 | 544 | 20k+ | Text Domain Mismatch | ||
| #12 | پلاگین پرداخت دلخواه | 20 | 584 | 446 | 900 | Text Domain Mismatch | ||
| #13 | Pix por Piggly (para Woocommerce) | 20 | 547 | 195 | 4k+ | Exception output is not escaped | ||
| #14 | Forumax – AI Powered Advanced Community Forum Plugin | 21 | 4,931 | 4,352 | 600 | Text Domain Mismatch | ||
| #15 | Daily Prayer Time | 21 | 947 | 1,780 | 1k+ | Non-prefixed global variable | ||
| #16 | LA-Studio Element Kit for Elementor | 21 | 8,403 | 1,882 | 10k+ | Text Domain Mismatch | ||
| #17 | MotoPress Hotel Booking | 21 | 3,067 | 1,037 | 10k+ | Text Domain Mismatch | ||
| #18 | Oasis Workflow | 21 | 775 | 575 | 600 | Text Domain Mismatch | ||
| #19 | Royal Addons for Elementor – Addons and Templates Kit for Elementor | 21 | 12,991 | 2,414 | 600k+ | Text Domain Mismatch | ||
| #20 | TotalPoll for Polls and Contests | 21 | 1,366 | 155 | 1k+ | Text Domain Mismatch | ||
| #21 | Trace My IP – Visitor IP Tracker, Stats Analytics & Page Views Counter with Email Alerts | 21 | 871 | 338 | 1k+ | wp function not compatible with requires wp | ||
| #22 | UPC/EAN/GTIN Barcode Generator/Importer | 21 | 776 | 311 | 500 | Exception output is not escaped | ||
| #23 | WebTotem Security | 21 | 1,110 | 213 | 800 | Text Domain Mismatch | ||
| #24 | Frontend Admin by DynamiApps | 22 | 5,943 | 3,232 | 9k+ | Text Domain Mismatch | ||
| #25 | Accept PayPal Payments using Contact Form 7 | 22 | 359 | 127 | 600 | Text Domain Mismatch | ||
| #26 | Estatik Real Estate Plugin | 22 | 3,084 | 325 | 10k+ | Text Domain Mismatch | ||
| #27 | Notification Bar, Announcement and Cookie Notice WordPress Plugin – FooBar | 22 | 1,321 | 1,371 | 3k+ | Non-prefixed global variable | ||
| #28 | Hesabfa Accounting | 22 | 467 | 718 | 500 | Text Domain Mismatch | ||
| #29 | Csomagpontok és Címkék WooCommerce-hez | 22 | 2,002 | 769 | 7k+ | Text Domain Mismatch | ||
| #30 | Számlázz.hu integráció WooCommerce-hez | 22 | 1,169 | 460 | 7k+ | Text Domain Mismatch | ||
| #31 | JCC Payment Gateway for Woocommerce | 22 | 2,273 | 1,136 | 600 | Text Domain Mismatch | ||
| #32 | Jim Soft Swiss QR Invoice | 22 | 264 | 392 | 400 | Non-prefixed global variable | ||
| #33 | MapSVG – Vector maps, Image maps, Google Maps | 22 | 179 | 93 | 1k+ | Missing direct file access protection | ||
| #34 | Newsletters | 22 | 2,977 | 2,261 | 2k+ | Text Domain Mismatch | ||
| #35 | WP OAuth Server (OAuth Authentication) | 22 | 189 | 345 | 3k+ | Non-prefixed function | ||
| #36 | Slim Jetpack | 22 | 2,586 | 1,947 | 2k+ | Text Domain Mismatch | ||
| #37 | Swift Performance Lite | 22 | 2,346 | 1,325 | 6k+ | Text Domain Mismatch | ||
| #38 | Welcart e-Commerce | 22 | 10,366 | 10,903 | 10k+ | Text Domain Mismatch | ||
| #39 | Peach Payments Gateway | 22 | 335 | 144 | 1k+ | Non Singular String Literal Domain | ||
| #40 | Paysera Payment Gateway for WooCommerce | 22 | 1,870 | 198 | 7k+ | Exception output is not escaped | ||
| #41 | CoDesigner – All in One Elementor WooCommerce Builder | 22 | 4,131 | 774 | 5k+ | Text Domain Mismatch | ||
| #42 | Master Accordion ( Former WP Awesome FAQ Plugin ) | 22 | 1,774 | 1,286 | 700 | Non-prefixed global variable | ||
| #43 | ShopWP | 22 | 430 | 225 | 700 | Text Domain Mismatch | ||
| #44 | Print Labels with Barcodes. Create price tags, product labels, order labels for WooCommerce | 23 | 1,185 | 1,027 | 1k+ | Text Domain Mismatch | ||
| #45 | Gutenberg Blocks – ACF Blocks Suite | 23 | 1,097 | 1,449 | 400 | Non-prefixed global variable | ||
| #46 | Advanced Custom Fields: Extended | 23 | 1,885 | 329 | 100k+ | Text Domain Mismatch | ||
| #47 | Custom WooCommerce Checkout Fields Editor | 23 | 755 | 1,386 | 2k+ | Non-prefixed global variable | ||
| #48 | Advanced Custom Fields (ACF®) | 23 | 2,468 | 1,239 | 2m+ | Text Domain Mismatch | ||
| #49 | Autocomplete Address and Location Picker for WooCommerce | 23 | 630 | 1,299 | 2k+ | Non-prefixed global variable | ||
| #50 | B2BKing — Ultimate WooCommerce B2B and Wholesale Plugin — Wholesale Prices, Bulk Order Form & More | 23 | 1,347 | 411 | 10k+ | Text Domain Mismatch |