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.

This topic contains 5 replies, has 2 voices.

Last updated by Bobby 4 months, 2 weeks ago.

Assigned support staff: Bobby.

Author Posts
June 3, 2021 at 8:49 pm #8912275


We are using WMPL Multicurrency feature.
1) Our pricing is based on the geolocation of the user, not the language
2) We want to manually specify the price of each product in each country

Problem that we have:
1) When we load the page, we see the original pricing for 1 second before it switch to the correct price based on user location.

2) If we change the language of the site, the price change, even if we selected to "show currencies based on client location" in the settings.

Here's a quick screencast of the problem: hidden link

Here's a screenshot of our setting page: hidden link

Please note that MaxMind is properly configured and working fine (we've tested in different countries).

June 4, 2021 at 6:13 am #8914499


Languages: English (English )

Timezone: America/Los_Angeles (GMT-07:00)


When I visit your site I see the $1,000 right away however a brief reload does happen even with the pictures which I believe might not be related to WPML but rather caching or the theme. (I am located in US)

However, if I do change language then yes it will showcase the other language's pricing.

This is expected behavior as if a user decides to change their language the plugin cannot force them unless you utilize some custom code to force a redirect.

Please note that we cannot provide custom work within this forum however what you could use is the hook wpml_switch_language()

You can see an example here of a user using their own custom code along with our hooks to create a forced redirection based on his user's language

For further information please see here:

For help with custom work, we recommend the following contractors

June 4, 2021 at 2:14 pm #8917853


Hi Bobby,

thanks for the reply. So you are saying that it's a normal behavior to have a different price in a different language? I'm a little surprised by that, since the currency in the settings is based on geolocation, not the language.

So if we have a spanish visitor from US, the pricing will change???

June 4, 2021 at 9:05 pm #8919369


Languages: English (English )

Timezone: America/Los_Angeles (GMT-07:00)

I think the configuration is a bit different for what you are trying to achieve.

If you go to your WooCommerce product, let's use this one for example :"Introduction to Dermopharmacy and Cosmetology"

Edit it and let me know what is the price for it set in English and the price set for French.

It looks like you are setting it to $1000 for EN and $800 in canadian.

However, the currency you are setting it in is $1=$1 so when I view your product in Canadian i will still see $800 in the USD currency either way.

let me know if that doesnt make sense.

For example test using a euro location and you should see one price in Euro under the Englsih language and another under French but now it will be in Euro.

So to summarize:

The feature works as expected, me for example I am in the US and I only see the currenct in USD, however you have set a different price per language so if I switch to another language I will see that different price in my currency that is available which is USD.

June 7, 2021 at 12:46 pm #8933375


Hi Bobby,

normally, Woocmmerce pricing can't be edited in a translated language. See this screenshot: hidden link

WPML prompt me to use the "WooCommerce Multilingual products translation" page, which does't seem to work (the page just refresh).

It seems that the problem is this: WooCommerce use the 1=1$ conversion rate on translated language instead of using our manual custom price.

June 7, 2021 at 9:13 pm #8936317


Languages: English (English )

Timezone: America/Los_Angeles (GMT-07:00)

Correct, to achieve what you are trying you might be able to adjust your currency rates from 1=1 by editing it within WooCommerce Multilingual->Multi-Currency->edit currency rate.

At the moment with WPML + WCML it's not possible to set a different price per country for the same product

You might consider using an additional plugin for enhancing functionality. Here a suggestion from our side:

hidden link

Additionally, another workaround you might consider is adding a "new" custom currency that you can control as suggested here:

The topic ‘[Closed] Multicurrency show the wrong price in translated language’ is closed to new replies.