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 |
|---|---|---|---|---|---|---|---|---|
| #51 | Events Manager – OpenStreetMaps | 20 | 559 | 444 | 700 | Output is not escaped | ||
| #52 | Trace My IP – Visitor IP Tracker, Stats Analytics & Page Views Counter with Email Alerts | 20 | 866 | 338 | 1k+ | wp function not compatible with requires wp | ||
| #53 | Web Directory Free | 20 | 808 | 174 | 400 | Missing direct file access protection | ||
| #54 | Razorpay for WooCommerce | 20 | 974 | 855 | 100k+ | Non-prefixed function | ||
| #55 | WPJAM Basic | 20 | 328 | 356 | 4k+ | Output is not escaped | ||
| #56 | School Management System – WPSchoolPress | 20 | 353 | 5,275 | 1k+ | Non-prefixed global variable | ||
| #57 | Store Locator WordPress | 21 | 2,372 | 1,572 | 10k+ | Text Domain Mismatch | ||
| #58 | Backup Migration | 21 | 981 | 1,093 | 80k+ | Non-prefixed global variable | ||
| #59 | Forumax – AI Powered Advanced Community Forum Plugin | 21 | 4,936 | 4,357 | 600 | Text Domain Mismatch | ||
| #60 | Booking Ultra Pro Appointments Booking Calendar Plugin | 21 | 761 | 2,083 | 400 | Request data is not unslashed | ||
| #61 | Captcha Them All | 21 | 300 | 323 | 6k+ | Output is not escaped | ||
| #62 | CartFlows – Funnel Builder & Checkout Plugin for WooCommerce | 21 | 462 | 654 | 200k+ | Text Domain Mismatch | ||
| #63 | Smart Grid-Layout Design for Contact Form 7 | 21 | 1,126 | 734 | 10k+ | Output is not escaped | ||
| #64 | SMS Extension for Contact Form 7 | 21 | 720 | 1,387 | 400 | Non-prefixed global variable | ||
| #65 | Cost Calculator Builder | 21 | 322 | 766 | 30k+ | Non-prefixed global variable | ||
| #66 | Daily Prayer Time | 21 | 947 | 1,780 | 1k+ | Non-prefixed global variable | ||
| #67 | Free Downloads WooCommerce | 21 | 430 | 359 | 4k+ | Output is not escaped | ||
| #68 | Duplicator – Backups & Migration Plugin – Cloud Backups, Scheduled Backups, & More | 21 | 2,572 | 1,277 | 1m+ | Output is not escaped | ||
| #69 | Ebook Store | 21 | 666 | 1,087 | 700 | Non-prefixed global variable | ||
| #70 | Envo Extra | 21 | 878 | 600 | 20k+ | Text Domain Mismatch | ||
| #71 | eRoom – Webinar & Meeting Plugin for Zoom, Google Meet, Microsoft Teams | 21 | 186 | 437 | 9k+ | Non-prefixed global variable | ||
| #72 | Eupago Gateway For Woocommerce | 21 | 612 | 320 | 2k+ | Output is not escaped | ||
| #73 | EventPrime – Events Calendar, Bookings and Tickets | 21 | 872 | 4,297 | 7k+ | Non-prefixed global variable | ||
| #74 | Campaign Monitor for WordPress | 21 | 386 | 461 | 2k+ | Non-prefixed global variable | ||
| #75 | Front End Users | 21 | 719 | 2,759 | 400 | Non-prefixed global variable | ||
| #76 | Frontend Dashboard | 21 | 384 | 945 | 500 | Non-prefixed function | ||
| #77 | If-So Dynamic Content – Elementor & All Page Builders Personalization | 21 | 889 | 725 | 7k+ | Unsafe printing function | ||
| #78 | Imagify: Optimize Images for Top Speed (Compress & Convert to WebP/AVIF) | 21 | 420 | 861 | 1m+ | Non-prefixed global variable | ||
| #79 | JCH Optimize | 21 | 953 | 133 | 4k+ | Output is not escaped | ||
| #80 | LA-Studio Element Kit for Elementor | 21 | 8,390 | 1,964 | 10k+ | Text Domain Mismatch | ||
| #81 | MailChimp Subscribe Form, Optin Builder, PopUp Builder, Form Builder | 21 | 1,133 | 3,011 | 2k+ | Non-prefixed global variable | ||
| #82 | Mapster WP Maps | 21 | 3,440 | 2,903 | 3k+ | Text Domain Mismatch | ||
| #83 | Mergado Pack | 21 | 2,323 | 588 | 700 | Output is not escaped | ||
| #84 | Mooberry Book Manager | 21 | 1,040 | 399 | 1k+ | Text Domain Mismatch | ||
| #85 | MotoPress Hotel Booking | 21 | 3,061 | 1,037 | 10k+ | Text Domain Mismatch | ||
| #86 | Points Management System For Gamification, Ranks, Badges, and Loyalty Rewards Program – myCred | 21 | 1,469 | 3,333 | 10k+ | Non-prefixed global variable | ||
| #87 | Oasis Workflow | 21 | 775 | 575 | 700 | Text Domain Mismatch | ||
| #88 | OneLogin SAML SSO | 21 | 507 | 330 | 7k+ | wp function not compatible with requires wp | ||
| #89 | Landing Page Builder – Coming Soon page, Maintenance Mode, Lead Page, WordPress Landing Pages | 21 | 1,173 | 2,983 | 9k+ | Non-prefixed global variable | ||
| #90 | Paid Membership Subscriptions – Effortless Memberships, Recurring Payments & Content Restriction | 21 | 1,918 | 5,065 | 10k+ | Non-prefixed hook name | ||
| #91 | Razorpay for Gravity Forms | 21 | 411 | 47 | 600 | Exception output is not escaped | ||
| #92 | Five Star Restaurant Reservations – WordPress Booking Plugin | 21 | 1,099 | 1,147 | 10k+ | Output is not escaped | ||
| #93 | Rocket Maintenance Mode & Coming Soon Page | 21 | 1,176 | 1,406 | 4k+ | Non-prefixed global variable | ||
| #94 | Royal Addons for Elementor – Addons and Templates Kit for Elementor | 21 | 13,011 | 2,530 | 600k+ | Text Domain Mismatch | ||
| #95 | Seamless Donations is Sunset | 21 | 600 | 514 | 2k+ | Text Domain Mismatch | ||
| #96 | Professional Social Sharing Buttons, Icons & Related Posts – Shareaholic | 21 | 327 | 181 | 10k+ | Output is not escaped | ||
| #97 | Testerwp ecommerce companion | 21 | 811 | 436 | 1k+ | Text Domain Mismatch | ||
| #98 | ThirstyAffiliates – Affiliate Links, Link Branding, Link Tracking & Marketing Plugin | 21 | 190 | 660 | 30k+ | Non-prefixed global variable | ||
| #99 | TotalPoll for Polls and Contests | 21 | 1,366 | 155 | 1k+ | Text Domain Mismatch | ||
| #100 | UPC/EAN/GTIN Barcode Generator/Importer | 21 | 776 | 311 | 500 | Exception output is not escaped |