Skip Navigation

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.

Sun Mon Tue Wed Thu Fri Sat
- 12:00 – 16:00 10:00 – 14:00 10:00 – 14:00 9:00 – 13:00 9:00 – 13:00 -
- 17:00 – 21:00 15:00 – 19:00 15:00 – 19:00 14:00 – 18:00 14:00 – 18:00 -

Supporter timezone: Europe/Bucharest (GMT+02:00)

Tagged: 

This topic contains 5 replies, has 3 voices.

Last updated by Mihai Apetrei 1 day, 17 hours ago.

Assisted by: Mihai Apetrei.

Author Posts
February 14, 2025 at 11:39 pm #16707996

emmaA-5

Background of the issue:
I am using the plugin 'Checkout plugins - Stripe for Woocommerce' to add more payment methods to my Woocommerce store. I am trying to translate the Order button label of the payment methods appearing on the Cart Page from Italian to English. I have already translated all the strings needed in WPML's String Translation, but it didn't work. I also followed a support request with a similar issue (link: https://wpml.org/forums/topic/translation-of-payment-methods/#post-13392735), but it didn't solve my problem. The issue can be seen on this page: hidden link

Symptoms:
The strings always appear in Italian on the English version of my website, although I have translated them.

Questions:
Why are the translated strings not appearing in English on the Cart Page?
Is there a specific step I might have missed in the translation process for the Order button label?

February 15, 2025 at 7:14 pm #16709603

Andreas W.
Supporter

Languages: English (English ) Spanish (Español ) German (Deutsch )

Timezone: America/Lima (GMT-05:00)

Hello,

1) Please verify that the strings are assigned to the correct source language:
https://wpml.org/documentation/getting-started-guide/string-translation/how-to-change-the-source-language-of-strings/

2) Verify if deleting the string from WPML String Translation and registering and translating them again solves the issue.

You can go to WPML > String Translation and in the bottom section enable the option to "Register strings while page is rendered" to register the string again.

To do this you will need to enable the option, then go to the Frontend where the strings appear. If you have the page already open, please refresh it. This should register the strings again.

---

If this does not clarify the reason for the issue, then it might be an issue "Checkout Plugins - Stripe for WooCommerce".

The latest major version of WordPress changed how plugins and theme load their text domains in WordPress.

If you enable WP DEBUG you might run into an _load_textdomain_just_in_time() error similar to this:
https://wpml.org/errata/php-error-wp-6-7-notice-function-_load_textdomain_just_in_time-was-called/

If this is the case, then you might need to try to reach the plugin's support team about this.

How to enable WP DEBUG:
https://developer.wordpress.org/advanced-administration/debug/debug-wordpress/

If you need our help to verify if this is the cause of the issue, please let us know.

Best regards
Andreas

February 17, 2025 at 1:28 pm #16714498

emmaA-5

Hi,

I checked the strings and they are assigned to the correct language respectevely.
There were both all the Strings in English ("Pay with Klarna/Alipay/WeChat" and so on, translated in Italian) and all the Strings in Italian ("Paga con Klarna/Alipay/WeChat" and so on, translated in English).

I thought this could generate a conflict and I delete first the English version of the Strings, leaving only the Italian ones, than doing the opposite process.
In the end I delete everything and registred all of them again, but unfortunately none of these operations solved the problem.

----
I tried also to enable the WP_DEBUG following the process at the following link: https://developer.wordpress.org/advanced-administration/debug/debug-wordpress/ , but the debug.log file was not created in my wp-content directory.

Do you have any other suggestion?
Thanks in advance

February 19, 2025 at 3:35 pm #16725639

Mihai Apetrei
Supporter

Languages: English (English )

Timezone: Europe/Bucharest (GMT+02:00)

Hi there, and thank you for reaching out.

Certain strings may require a specific procedure to be located and translated.

Moreover, the proper method for translating strings greatly depends on how they have been incorporated into the plugin. Some plugins might not even be written in a way where the coded strings are implemented in an "internationalized" way so that is why no multilingual plugin might be able to see the strings out of the box without some extra work upfront.

IMPORTANT - this might be the situation here: Sometimes, there are even duplicates of the same string and only one of them is the correct one that needs to be translated.

Also, sometimes, simply removing the string (checking the box and removing it) and then re-registering it again by scanning for it (one of the methods below) and re-translating it resolves the issue. From my understanding, you already tried this (as my colleague also mentioned this step above).

Please attempt both methods and check if either of them resolves the issue.

Method 1:

Navigate to WPML > String Translation, and at the bottom of the page, you will find a checkbox labeled "Look for strings while pages are rendered." You can enable (check) that option, then go to the front end to a page where the string is displayed, and afterward return to WPML > String Translation to search for that string and see if it now appears.

Method 2:

If you can't locate them within WPML > String Translation, they might be included as admin text strings.

This is the typical process for finding and translating admin text strings:
https://wpml.org/documentation/getting-started-guide/string-translation/finding-strings-that-dont-appear-on-the-string-translation-page/#translate-admin-and-settings-strings

Related documentation:
https://wpml.org/documentation/getting-started-guide/string-translation/finding-strings-that-dont-appear-on-the-string-translation-page/

Please keep me informed about your progress.

Mihai Apetrei

February 19, 2025 at 4:58 pm #16726107

emmaA-5

Hi,

Actually my problem is the opposite: strings appear and are translated in the backend but they are not displaying in English in the frontend.
Please have a look to my screenshot.

As I was explaying to your colleague, I thought there was a conflict between the English version of these strings and the Italian one.
I tried to solve the problem by deleting one of the two versions. First I cancel the English strings and leave only the Italian ones, then I restored the English version and delete the Italian part. However, the problem is still there.

I think the English version is by Woocommerce, while the Italian one is by Checkout plugins - Stripe for Woocommerce.

strings in english and italian (checkout plugins for woocommerce).png
February 20, 2025 at 12:50 am #16727129

Mihai Apetrei
Supporter

Languages: English (English )

Timezone: Europe/Bucharest (GMT+02:00)

Hi there, and thank you for the info.

I am more than happy to take a closer look at this.

Please create a whole website backup and then share the site credentials in the private fields I enabled for your next reply.