Skip to content Skip to sidebar

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

Problem:
The client is facing an issue where the translated strings for different payment options in the checkout are not displaying on the front end after updating plugins. The issue is specific to the WooCommerce Blocks checkout, where the plugin does not call WPML translation filters.
Solution:
We identified that the plugin was returning the raw option value without passing it through WPML's translation filters. To resolve this, we modified the plugin file to ensure that the title and description are translated before being sent to the checkout block. Here are the steps we took:

  • Navigate to
    wp-content/plugins/multibanco-ifthen-software-gateway-for-woocommerce/woocommerce-blocks/MultibancoIfthenPay.php
  • Replace the existing
    get_payment_method_data()

    function with the new code that includes WPML translation filters for the title and description.

  • Go to WPML --> String Translation and translate the strings again.

This should ensure that the payment method descriptions appear translated in the WooCommerce Blocks checkout. We also recommend informing the plugin author about this issue for a permanent fix.

Please note that this solution might be outdated or not applicable to your specific case. We highly recommend checking related known issues, verifying the version of the permanent fix, and confirming that you have installed the latest versions of themes and plugins. If the issue persists, please open a new support ticket.

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.

This topic contains 18 replies, has 0 voices.

Last updated by patriciaR-16 4 weeks, 1 day ago.

Assisted by: Paola Mendiburu.

Author Posts
September 2, 2025 at 12:38 pm #17366092

patriciaR-16

Background of the issue:
I am trying to get support for the payment method selection block on my site hidden link. I have translated the strings in WPML and ensured all related plugins are updated.

Symptoms:
The translations for the different payment options in the checkout are not displaying on the front end. After the update, the icon for each language shows the pencil (which seems correct), but after refreshing the page it changes back to the icon shown in the attached image.

Questions:
Why are the translated strings for payment options not displaying on the front end?

September 2, 2025 at 2:37 pm #17366759

Paola Mendiburu
WPML Supporter since 11/2020

Languages: English (English ) Spanish (Español ) Italian (Italiano )

Timezone: Europe/Madrid (GMT+01:00)

Hi there!

This is Paola and I have converted into a ticket as I didn´t get answer on the chat.

I would like to request temporary access (wp-admin and FTP) to your site to take a better look at the issue. You will find the needed fields for this below the comment area when you log in to leave your next reply. The information you will enter is private which means only you and I can see and have access to it.

Privacy and Security Policy
We have strict policies regarding privacy and access to your information. Please see:
https://wpml.org/purchase/support-policy/privacy-and-security-when-providing-debug-information-for-support/

**IMPORTANT**
- Please make a backup of the site files and database before providing us access.
- If you do not see the wp-admin/FTP fields this means your post & website login details will be made PUBLIC. DO NOT post your website details unless you see the required wp-admin/FTP fields. If you do not, please ask me to enable the private box.
The private box looks like this: hidden link

September 3, 2025 at 1:20 pm #17370488

Paola Mendiburu
WPML Supporter since 11/2020

Languages: English (English ) Spanish (Español ) Italian (Italiano )

Timezone: Europe/Madrid (GMT+01:00)

Hi there!

I see that the strings that doesn´t appear translated are the ones that comes from the plugin: Multibanco, MB WAY, Credit card, Apple Pay, Google Pay, Payshop, Cofidis Pay, and PIX (ifthenpay) for WooCommerce

Could you please install the plugin in the following test site?
hidden link

That way I can see if I can reproduce the issue.

Please let me know when it is done.

September 4, 2025 at 4:24 pm #17377044

patriciaR-16

Hello Paola,
Thank you very much for your feedback.
I’m currently unable to access the link you sent. Could you please check it? As soon as you resend it, I will proceed with the installation.

Thank you,

September 5, 2025 at 8:08 am #17378157

Paola Mendiburu
WPML Supporter since 11/2020

Languages: English (English ) Spanish (Español ) Italian (Italiano )

Timezone: Europe/Madrid (GMT+01:00)

Please let me know what do you see as the link is working for me.

September 8, 2025 at 3:31 pm #17384218

patriciaR-16

Hello Paola,

and apologies for the delay in getting back to you. Regarding the plugin, it is already installed and active. If anything else is needed, please don’t hesitate to let us know. We’ll be waiting for your feedback.

Manythnaks

September 10, 2025 at 8:26 am #17389484

Paola Mendiburu
WPML Supporter since 11/2020

Languages: English (English ) Spanish (Español ) Italian (Italiano )

Timezone: Europe/Madrid (GMT+01:00)

Ok thanks.

I am working on it to see if I can reproduce the problem.

September 11, 2025 at 7:37 am #17392917

Paola Mendiburu
WPML Supporter since 11/2020

Languages: English (English ) Spanish (Español ) Italian (Italiano )

Timezone: Europe/Madrid (GMT+01:00)

Ok, as I need a valid license in order to activate Multibanco.

Would you allow me to download a copy of your site to test it locally?
Alternatively, do you already have a staging site where I could run some tests safely without affecting your live site?

September 15, 2025 at 8:11 am #17400973

patriciaR-16

Hi Paola,

I had to confirm with our IT support, and I can confirm that you may download a copy to test it locally.

Thank you, I’ll be waiting for your feedback.

September 15, 2025 at 5:33 pm #17403670

Paola Mendiburu
WPML Supporter since 11/2020

Languages: English (English ) Spanish (Español ) Italian (Italiano )

Timezone: Europe/Madrid (GMT+01:00)

I see that there is a new version of the plugin.

Could you please update it first and re-translate the string and let me knoe if the issue is fixed?

September 17, 2025 at 11:57 am #17409300

patriciaR-16

Hello Paola,

We have already updated the plugins, including Ifthenpay (where those strings are located), but the issue persists. New ones appeared, I did a rescan for possible new strings, but nothing changed, the error remains.

Is there any way we can ensure that these texts appear in the other languages? This point is extremely important for our website’s conversion, since the payment names and texts (at checkout) are in another language and may generate mistrust (for example with the “Multibanco” option).

Thank you very much, I look forward to your feedback.

September 17, 2025 at 5:42 pm #17410944

Paola Mendiburu
WPML Supporter since 11/2020

Languages: English (English ) Spanish (Español ) Italian (Italiano )

Timezone: Europe/Madrid (GMT+01:00)

Hi there!

I don´t have access anymore to the site.

In order to continue the investigation, I would like to request access (wp-admin and FTP) to your site, please add also FTP access so I can have a look to the files for that plugin.

I have enabled next answer as private.
The private box looks like this: hidden link

September 19, 2025 at 8:13 am #17415613

patriciaR-16

Hello Paola,

Please find the temporary login details below:

It is possible to access the files via WP File Manager (installed). If you’d like to download a copy of the website, you can do so.
If you need anything else, please let me know.

Many thanks

September 22, 2025 at 8:38 am #17420356

Paola Mendiburu
WPML Supporter since 11/2020

Languages: English (English ) Spanish (Español ) Italian (Italiano )

Timezone: Europe/Madrid (GMT+01:00)

Thanks.

I have deleted the access as you added on a public way.

I am downloading a copy with Duplicator so I can investigate the issue.

I will let you know when I have news.

September 22, 2025 at 11:19 am #17421489

Paola Mendiburu
WPML Supporter since 11/2020

Languages: English (English ) Spanish (Español ) Italian (Italiano )

Timezone: Europe/Madrid (GMT+01:00)

Hi there!

I have found the issue and was on the plugin code.

The reason why the payment method description was not showing translated is that the plugin was returning the raw option value in the WooCommerce Checkout Blocks, without calling WPML translation filters.

In the classic checkout (shortcode) it works, because WPML intercepts get_option().
But in the Blocks checkout, the plugin must explicitly pass the strings through wpml_translate_single_string().

We modified the plugin file so that the title and description are translated before being sent to the checkout block.

In order to solved it this is what I have done:
- go to wp-content/plugins/multibanco-ifthen-software-gateway-for-woocommerce/woocommerce-blocks/MultibancoIfthenPay.php
- change this code

public function get_payment_method_data() {
    return apply_filters(
        'multibanco_ifthen_blocks_payment_method_data',
        array(
            'title'       => isset( $this->settings['title'] ) ? $this->settings['title'] : '',
            'description' => isset( $this->settings['description'] ) ? $this->settings['description'] : '',
            'icon'        => WC_IfthenPay_Webdados()->multibanco_icon,
            'icon_width'  => 28,
            'icon_height' => 24,
        )
    );
}

- to this one:

public function get_payment_method_data() {
    $title       = isset( $this->settings['title'] ) ? $this->settings['title'] : '';
    $description = isset( $this->settings['description'] ) ? $this->settings['description'] : '';

    // Pass strings through WPML translation
    if ( function_exists( 'apply_filters' ) ) {
        $title = apply_filters(
            'wpml_translate_single_string',
            $title,
            'admin_texts_woocommerce_multibanco_ifthen_for_woocommerce_settings',
            'title'
        );
        $description = apply_filters(
            'wpml_translate_single_string',
            $description,
            'admin_texts_woocommerce_multibanco_ifthen_for_woocommerce_settings',
            'description'
        );
    }

    return apply_filters(
        'multibanco_ifthen_blocks_payment_method_data',
        array(
            'title'       => $title,
            'description' => $description,
            'icon'        => WC_IfthenPay_Webdados()->multibanco_icon,
            'icon_width'  => 28,
            'icon_height' => 24,
        )
    );
}

- then go to WPML --> String translation and translate again the string
- then it will appear translated

I recommend you to update the plugin author if it is happening on other strings.
hidden link