PluginCheck.CodeAnalysis.DiscouragedFunctions.load_plugin_textdomainFound
Discouraged text-domain loading
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 |
|---|---|---|---|---|---|---|---|---|
| #2651 | Image Alt Text | 78 | 5 | 19 | 9k+ | Nonce verification recommended | ||
| #2652 | Layouts for Elementor | 78 | 27 | 1k+ | Non-prefixed global variable | |||
| #2653 | Layouts for WPBakery | 78 | 28 | 3k+ | Non-prefixed global variable | |||
| #2654 | Maintenance Notice | 78 | 26 | 71 | 800 | Non-prefixed global variable | ||
| #2655 | Coming Soon & Maintenance Mode Page & Under Construction | 78 | 35 | 67 | 10k+ | Non-prefixed global variable | ||
| #2656 | Post slider elementor addons | 78 | 168 | 13 | 2k+ | Text Domain Mismatch | ||
| #2657 | PrettyPhoto – Simple Lightbox Plugin | 78 | 25 | 12 | 2k+ | Non Singular String Literal Domain | ||
| #2658 | PRENA – Product Pre-Orders for WooCommerce | 78 | 6 | 29 | 2k+ | Request data is not unslashed | ||
| #2659 | Resend Welcome Email | 78 | 5 | 9 | 1k+ | Nonce verification recommended | ||
| #2660 | SearchWP Live Ajax Search | 78 | 8 | 23 | 50k+ | Non-prefixed global variable | ||
| #2661 | History Timeline for Biography, Company History & Event Timeline | 78 | 29 | 37 | 1k+ | Non-prefixed global variable | ||
| #2662 | Twenty20 Image Before-After | 78 | 104 | 14 | 20k+ | Text Domain Mismatch | ||
| #2663 | Wheel of Life: Coaching and Assessment Tool for Life Coach | 78 | 3 | 113 | 3k+ | Non-prefixed global variable | ||
| #2664 | WP Downgrade | Specific Core Version | 78 | 12 | 6 | 100k+ | Unsafe printing function | ||
| #2665 | Feed Post Thumbnail | 78 | 9 | 3 | 2k+ | Unsafe printing function | ||
| #2666 | WP Simple Mail Sender | 78 | 21 | 6 | 3k+ | Non Singular String Literal Domain | ||
| #2667 | AffiliateWP – Affiliate Info | 79 | 27 | 7 | 1k+ | Text Domain Mismatch | ||
| #2668 | AffiliateWP – Force Pending Referrals | 79 | 35 | 12 | 500 | Text Domain Mismatch | ||
| #2669 | AffiliateWP – WooCommerce Redirect Affiliates | 79 | 27 | 7 | 1k+ | Text Domain Mismatch | ||
| #2670 | AIKO – AI Developer Lite | 79 | 10 | 7 | 6k+ | error log error log | ||
| #2671 | Alx Extensions | 79 | 113 | 4 | 8k+ | Text Domain Mismatch | ||
| #2672 | Blocks for Products | 79 | 18 | 13 | 400 | Non Singular String Literal Domain | ||
| #2673 | CoolClock – a Javascript Analog Clock | 79 | 21 | 9 | 2k+ | Output is not escaped | ||
| #2674 | Display Post Metadata | 79 | 12 | 4 | 500 | Output is not escaped | ||
| #2675 | Fygaro WC Plugin | 79 | 38 | 6 | 600 | Text Domain Mismatch | ||
| #2676 | Global Site Tag Tracking | 79 | 11 | 1 | 1k+ | Output is not escaped | ||
| #2677 | JSON API Auth | 79 | 5 | 11 | 700 | Non-prefixed function | ||
| #2678 | Oxyplug Preload | 79 | 7 | 9 | 500 | Output is not escaped | ||
| #2679 | Popupsmart | 79 | 28 | 2 | 600 | Output is not escaped | ||
| #2680 | Qi Addons For Elementor | 79 | 33 | 339 | 200k+ | Non-prefixed global variable | ||
| #2681 | Related Products Manager for WooCommerce | 79 | 9 | 43 | 1k+ | Non-prefixed global variable | ||
| #2682 | Search engines blocked warning | 79 | 20 | 3 | 500 | Output is not escaped | ||
| #2683 | SSH SFTP Updater Support | 79 | 6 | 31 | 10k+ | Non-prefixed global variable | ||
| #2684 | Customizer for WooCommerce | 79 | 4 | 6 | 20k+ | Missing nonce verification | ||
| #2685 | Notifima – WooCommerce Stock Manager, Inventory Management, Waitlist | 79 | 121 | 42 | 3k+ | Text Domain Mismatch | ||
| #2686 | WP Last Modified Info | 79 | 45 | 32 | 40k+ | Short PHP open tag found | ||
| #2687 | WP Page Loading | 79 | 14 | 9 | 800 | Text Domain Mismatch | ||
| #2688 | WPMagPlus Companion | 79 | 104 | 16 | 700 | Text Domain Mismatch | ||
| #2689 | YITH Maintenance Mode | 79 | 19 | 63 | 5k+ | Non-prefixed global variable | ||
| #2690 | Elementor Blocks for Gutenberg | 80 | 7 | 6 | 10k+ | Output is not escaped | ||
| #2691 | ShopEngine Gutenberg WooCommerce Builder Blocks Addon – All in One WooCommerce Solution | 80 | 424 | 735 | 3k+ | Non-prefixed global variable | ||
| #2692 | Bricksable for Bricks Builder | 80 | 1 | 76 | 10k+ | Post Not In exclude | ||
| #2693 | wModes – Catalog Mode, Product Pricing, Enquiry Forms & Promotions | for WooCommerce | 80 | 465 | 900 | Non-prefixed global variable | |||
| #2694 | Custom Icons for Elementor | 80 | 6 | 25 | 10k+ | Non-prefixed global variable | ||
| #2695 | Hizzle CAPTCHA – Protect your forms from spam | 80 | 4 | 27 | 500 | Non-prefixed global variable | ||
| #2696 | Ocean Custom Sidebar | 80 | 8 | 3 | 20k+ | Missing Arg Domain | ||
| #2697 | Offcanvas Mobile Menu | 80 | 22 | 7 | 800 | Missing direct file access protection | ||
| #2698 | Panda Video | 80 | 29 | 17 | 3k+ | Non-prefixed global variable | ||
| #2699 | Post Carousel Addons For Elementor | 80 | 9 | 8 | 1k+ | Output is not escaped | ||
| #2700 | Pro Mime Types – Manage file media types | 80 | 55 | 98 | 2k+ | Non-prefixed global variable |