Skip Navigation

This thread is resolved. Here is a description of the problem and solution.

Problem:
You are trying to edit the 'Theme and Plugins Localization' section on your WordPress site and encountered an E_ERROR in wpml-string-translation plugin due to an unknown format specifier 't'.
Solution:
This issue is recognized as a known problem. Although the specific plugin mentioned in the errata might not be in use, another active plugin could be registering a text domain improperly, leading to this error. For more information and potential solutions, please refer to the errata page: https://wpml.org/errata/flux-checkout-fatal-error-uncaught-valueerror-unknown-format-specifier-t/.

If this solution does not apply to your case, or if it seems outdated, we recommend opening a new support ticket. We also highly suggest checking related known issues at https://wpml.org/known-issues/, verifying the version of the permanent fix, and confirming that you have installed the latest versions of themes and plugins. For further assistance, please visit our support forum: WPML Support Forum.

This is the technical support forum for WPML - the multilingual WordPress plugin.

Everyone can read, but only WPML clients can post here. WPML team is replying on the forum 6 days per week, 22 hours per day.

Tagged: 

This topic contains 1 reply, has 0 voices.

Last updated by thomasD-100 5 days, 8 hours ago.

Assisted by: Andrey.

Author Posts
June 11, 2025 at 1:26 pm #17126034

thomasD-100

Background of the issue:
I am trying to edit the section 'Theme and Plugins Localization' in my WordPress site. I encountered an issue while doing this.

Symptoms:
An error of type E_ERROR was caused in line 100 of the file /html/wordpress/wp-content/plugins/wpml-string-translation/classes/translations-file-scan/wpml-st-translations-file-registration.php. Error message: Uncaught ValueError: Unknown format specifier 't' in /html/wordpress/wp-content/plugins/wpml-string-translation/classes/translations-file-scan/wpml-st-translations-file-registration.php:100

Stack trace:
#0 /html/wordpress/wp-content/plugins/wpml-string-translation/classes/translations-file-scan/wpml-st-translations-file-registration.php(100): sprintf('/html/wordpress...', 'en_US')
#1 /html/wordpress/wp-content/plugins/wpml-string-translation/classes/translations-file-scan/wpml-st-translations-file-registration.php(65): WPML_ST_Translations_File_Registration->save_file_info('%TEXTDOMAIN%', '%TEXTDOMAIN%', '/html/wordpress...')
#2 /html/wordpress/wp-includes/class-wp-hook.php(326): WPML_ST_Translations_File_Registration->cached_save_mo_file_info(false, '%TEXTDOMAIN%', '/html/wordpress...')
#3 /html/wordpress/wp-includes/plugin.php(205): WP_Hook->apply_filters(false, Array)
#4 /html/wordpress/wp-includes/l10n.php(769): apply_filters('override_load_t...', false, '%TEXTDOMAIN%', '/html/wordpress...', 'en_US')
#5 /html/wordpress/wp-content/plugins/wpml-string-translation/classes/MO/JustInTime/MO.php(100): load_textdomain('%TEXTDOMAIN%', '/html/wordpress...', 'en_US')
#6 /html/wordpress/wp-content/plugins/sitepress-multilingual-cms/vendor/wpml/collect/src/Illuminate/Support/Collection.php(228): WPMLSTMOJustInTimeMO->WPMLSTMOJustInTime{closure}('/html/wordpress...', 0)
#7 /html/wordpress/wp-content/plugins/wpml-string-translation/classes/MO/JustInTime/MO.php(96): WPMLCollectSupportCollection->each(Object(Closure))
#8 /html/wordpress/wp-content/plugins/wpml-string-translation/classes/MO/JustInTime/MO.php(78): WPMLSTMOJustInTimeMO->loadTextDomain()
#9 /html/wordpress/wp-content/plugins/wpml-string-translation/classes/MO/JustInTime/MO.php(50): WPMLSTMOJustInTimeMO->load()
#10 /html/wordpress/wp-includes/l10n.php(196): WPMLSTMOJustInTimeMO->translate('License Key')
#11 /html/wordpress/wp-includes/l10n.php(307): translate('License Key', '%TEXTDOMAIN%')
#12 /html/wordpress/wp-content/plugins/kadence-blocks/vendor/vendor-prefixed/stellarwp/uplink/src/Uplink/Admin/License_Field.php(84): __('License Key', '%TEXTDOMAIN%')
#13 /html/wordpress/wp-content/plugins/kadence-blocks/vendor/vendor-prefixed/stellarwp/uplink/src/Uplink/Admin/Provider.php(106): KadenceWPKadenceBlocksStellarWPUplinkAdminLicense_Field->register_settings()
#14 /html/wordpress/wp-includes/class-wp-hook.php(322): KadenceWPKadenceBlocksStellarWPUplinkAdminProvider->admin_init()
#15 /html/wordpress/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters(NULL, Array)
#16 /html/wordpress/wp-includes/plugin.php(517): WP_Hook->do_action(Array)
#17 /html/wordpress/wp-admin/admin.php(176): do_action('admin_init')
#18 {main}
thrown

Questions:
How can I resolve the error related to the unknown format specifier 't'?
Is there a compatibility issue with the current versions of WordPress, PHP, or the WPML String Translation plugin?

June 11, 2025 at 1:39 pm #17126152

Andrey
WPML Supporter since 06/2013

Languages: English (English ) Russian (Русский )

Timezone: Europe/Kyiv (GMT+03:00)

Thank you for contacting WPML support.

It seems you’re encountering a known issue that our development team is already aware of.

For more information, please refer to the following errata:
https://wpml.org/errata/flux-checkout-fatal-error-uncaught-valueerror-unknown-format-specifier-t/

While you may not be using the exact plugin mentioned there, it’s possible that one of your active plugins is registering a text domain improperly, which could be triggering this issue.

June 16, 2025 at 10:16 am #17138039

thomasD-100

Thanks a lot for your help.
It works perfectly.