WordPress.WP.I18n.UnorderedPlaceholdersText
Unordered Placeholders Text
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 |
|---|---|---|---|---|---|---|---|---|
| #951 | ReCaptcha Integration for WordPress | 37 | 60 | 66 | 9k+ | Output is not escaped | ||
| #952 | YOURLS Link Creator | 37 | 196 | 39 | 500 | Text Domain Mismatch | ||
| #953 | Zakeke Interactive Product Designer for WooCommerce | 37 | 186 | 177 | 2k+ | Nonce verification recommended | ||
| #954 | Add Customer for WooCommerce | 38 | 229 | 153 | 1k+ | Text Domain Mismatch | ||
| #955 | Advanced Media Offloader | 38 | 57 | 93 | 5k+ | error log error log | ||
| #956 | Announcement Bar | 38 | 192 | 61 | 3k+ | Non Singular String Literal Domain | ||
| #957 | Activity Log – Monitor & Record User Changes | 38 | 81 | 149 | 200k+ | Nonce verification recommended | ||
| #958 | Ashe Extra | 38 | 109 | 54 | 3k+ | Text Domain Mismatch | ||
| #959 | BuddyPress Follow | 38 | 114 | 67 | 1k+ | Text Domain Mismatch | ||
| #960 | Category Posts Widget | 38 | 153 | 26 | 40k+ | Output is not escaped | ||
| #961 | WPAppsDev – CF7 Form Submission Limit | 38 | 104 | 33 | 1k+ | Text Domain Mismatch | ||
| #962 | CF7 to Webhook | 38 | 102 | 72 | 30k+ | Unsafe printing function | ||
| #963 | Checkout Files Upload for WooCommerce | 38 | 57 | 120 | 7k+ | Input is not sanitized | ||
| #964 | Clever Mega Menu for Visual Composer | 38 | 500 | 87 | 1k+ | Output is not escaped | ||
| #965 | Clever Mega Menu for Elementor | 38 | 835 | 44 | 1k+ | Output is not escaped | ||
| #966 | One page checkout and layouts for woocommerce | 38 | 83 | 52 | 3k+ | Non-prefixed global variable | ||
| #967 | Decent Comments | 38 | 93 | 28 | 2k+ | Output is not escaped | ||
| #968 | Export User Data | 38 | 187 | 62 | 6k+ | Text Domain Mismatch | ||
| #969 | Social Photo Fetcher | 38 | 151 | 43 | 1k+ | Output is not escaped | ||
| #970 | GoDaddy Payments for WooCommerce | 38 | 58 | 65 | 2k+ | Output is not escaped | ||
| #971 | GoUrl WooCommerce – Bitcoin Altcoin Payment Gateway Addon | 38 | 279 | 24 | 600 | Non Singular String Literal Domain | ||
| #972 | imoje | 38 | 62 | 160 | 2k+ | Nonce verification recommended | ||
| #973 | jQuery Pin It Button for Images | 38 | 129 | 36 | 10k+ | Output is not escaped | ||
| #974 | Multiple Domain Mapping on Single Site | 38 | 135 | 51 | 6k+ | Text Domain Mismatch | ||
| #975 | Name Directory | 38 | 520 | 309 | 2k+ | Output is not escaped | ||
| #976 | qTranslate X Cleanup and WPML Import | 38 | 167 | 102 | 800 | Text Domain Mismatch | ||
| #977 | Quick Download Button | 38 | 34 | 123 | 2k+ | Non-prefixed global variable | ||
| #978 | ShiftNav – Responsive Mobile Menu | 38 | 249 | 35 | 10k+ | Text Domain Mismatch | ||
| #979 | Simple JWT Login – Allows you to use JWT on REST endpoints. | 38 | 712 | 95 | 4k+ | Output is not escaped | ||
| #980 | Variation Swatches for WooCommerce | 38 | 45 | 65 | 2k+ | Output is not escaped | ||
| #981 | TopList.cz | 38 | 138 | 7 | 400 | Output is not escaped | ||
| #982 | WC-AC Hook | 38 | 44 | 72 | 1k+ | Missing nonce verification | ||
| #983 | Shipping Packages for WooCommerce – Dropship from multiple locations like AliExpress, eBay, Amazon, Etsy | 38 | 94 | 26 | 900 | Non Singular String Literal Domain | ||
| #984 | Vietnam Checkout for WooCommerce | 38 | 93 | 137 | 10k+ | Nonce verification recommended | ||
| #985 | Connect WooCommerce Shop to ERP/CRM, Verifactu and EU/VAT Compliance | 38 | 23 | 104 | 1k+ | Direct Query | ||
| #986 | WP Hebrew Date | 38 | 102 | 13 | 600 | Output is not escaped | ||
| #987 | WP-Ban | 38 | 99 | 108 | 8k+ | Unsafe printing function | ||
| #988 | WP-DraftsForFriends | 38 | 141 | 71 | 1k+ | Output is not escaped | ||
| #989 | Native PHP Sessions | 38 | 30 | 92 | 10k+ | Direct Query | ||
| #990 | WP Safe Mode | 38 | 95 | 55 | 2k+ | Output is not escaped | ||
| #991 | WP-ServerInfo | 38 | 162 | 55 | 10k+ | Output is not escaped | ||
| #992 | WP Video Lightbox | 38 | 107 | 67 | 30k+ | Unsafe printing function | ||
| #993 | ZeroBounce Email Verification & Validation | 38 | 299 | 162 | 900 | Text Domain Mismatch | ||
| #994 | ACF: Google Font Selector | 39 | 57 | 45 | 3k+ | Output is not escaped | ||
| #995 | Add-on Gravity Forms – MailPoet 3 | 39 | 31 | 33 | 600 | Output is not escaped | ||
| #996 | Add Tiktok Pixel for Tiktok ads (+Woocommerce) | 39 | 94 | 25 | 2k+ | Output is not escaped | ||
| #997 | AffiliateWP – Affiliate Area Tabs | 39 | 86 | 26 | 3k+ | Output is not escaped | ||
| #998 | Accessibility by AllAccessible | 39 | 200 | 82 | 2k+ | Unsafe printing function | ||
| #999 | bbPress Moderation | 39 | 75 | 15 | 500 | Non Singular String Literal Domain | ||
| #1000 | Billplz for WooCommerce | 39 | 289 | 65 | 6k+ | Text Domain Mismatch |