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 17 replies, has 2 voices.

Last updated by Bobby 3 years, 9 months ago.

Assisted by: Bobby.

Author Posts
March 3, 2021 at 3:08 pm #8219167

basv-25

I have a problem with showing the correct currency in my google search results. Somehow WPML / Woo sets USD as the currency in my structured data pages.

March 3, 2021 at 11:27 pm #8222633

Bobby
Supporter

Languages: English (English )

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

Hi There,

Please review the following documentation:
https://wpml.org/documentation/related-projects/woocommerce-multilingual/multi-currency-support-woocommerce/

Once you have reviewed the above information, go to WooCommerce->WooCommerce Multilingual->Multi-currency and compare with your settings.

Let me know your results, please.

March 4, 2021 at 9:13 am #8225471

basv-25

Hi bobby, Thank you for your reply. I viewed the article and I believe I have set-up everything correctly. But I think the system doesn't work 🙂 (I hope I'm wrong...)

I use the option "Show currencies based on client location". But if I do this, my rich product snippet looks like this (see printscreen A). This is the Dutch page of one of my products with a price in USD. Thats not good.

When I use the option "Show currencies based on language", the rich product snippet looks like this (see printscreen B). This is good, a Dutch page with prices in Euro.

But I want it to work with the first option, prices based on client location. This is because the Dutch page is quite easy, The Netherlands are in Europe and we only have prices in Euro. But my English page is visited by people from all over the world, USA, UK and other English countries and English speaking people worldwide....

Hope you can help, thanks!

B.png
A.png
March 4, 2021 at 5:57 pm #8230799

Bobby
Supporter

Languages: English (English )

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

Hi There,

Which option is currently enabled now?

I am guessing, show currencies based on language, right?

When I test the rich results here for the NL page it shows Euro as a currency:
hidden link

Do you currently use Cloudflare or any other caching plugins?
When testing the location option, are you testing using a VPN or is your location already in Europe?

March 4, 2021 at 6:27 pm #8231035

basv-25

Hi Bobby, thanks for your reply. I was using "based on client location" but I just switched to "based on language".

NL -> base currency euro
DE -> base currency euro
IT -> base currency euro
FR -> base currency euro
ES -> base currency euro

Above languages are mainly in Europe (or at least my clients are) and have euro as currency. So that works fine now. The rich snippet of those languages show euro which is good.

But now I still have the problem with the EN language (also my most important language). For my US clients I want that they see USD in google search (rich snippet). For my UK clients I like GBP in their search results (rich snippet) and for other English speaking clients I want them to see prices in Euro in search results.

The EN language now has "based on client location". For EN visitors on my website this works good, they get the currency from their location. But for the search results they see prices in USD (probably because the google bot that indexes my site sees the EN rich snippet which selects USD as currency because the bot comes from the US (but that's what I'm guessing.

Hope the problem is clear with this long story and hope that you can help me.

Thanks!

March 4, 2021 at 8:00 pm #8231551

Bobby
Supporter

Languages: English (English )

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

Thank you for the explanation!

You mentioned that in all languages except EN you have based on user language activated, how are you achieving this?

If the option Show currencies based on Client Location is enabled, I believe that is the only option available and that you cannot mix client location and based on user language.

You can exclude a country from a specific currency.

However, yes the search results can be a bit tricky as it takes a while for Google to re index your site, you can speed this process up by asking them manually to re index it, but as long as this works when users visit then google indexing will follow.

For example, if a User from NL visits your site and uses English and the currency shows euro correctly, then that is correct.

March 4, 2021 at 8:49 pm #8231895

basv-25

Hi Bobby, thanks for your reply. Here's a prinstscreen of my current setting (see attachment).

- Currency is based on user language (except English).
- As you can see I selected Location based for English at the bottom (not at the top option)

- I believe this set up is good for visitors of my site

- But I also believe that this set up is not good for currencies in the English search results. Why not? Because the English site is set up as "location based". So a my rich snippets of my English pages show USD as currency, because the Google bot that indexes these pages comes from the US. So all English search results (no matter if they are UK, AU, CA or US) show USD prices. Is there a fix or another set-up for this? How can a English searcher see prices in GBP and a Canadian searcher see prices in C$ and you from the US see prices in $?

Thanks for helping!

Schermafbeelding 2021-03-04 om 21.41.12.png
March 5, 2021 at 11:28 pm #8239545

Bobby
Supporter

Languages: English (English )

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

Hello,

I am checking with our team to verify if this is more of a google indexing issue or not, and will reply here once I have some feedback.

March 8, 2021 at 9:18 am #8249091

basv-25

Thanks, that will be perfect. From my opinion:
English language + currency by geolocate ON = Google bot comes from the US = product prices in GOOGLE SEARCH all over the world (UK, AU, CA, US) will be shown in USD.

We prefer that a UK searcher sees prices in google search in GBP, US searcher in USD, CA searcher ins C$ etc etc....

Thanks!

March 8, 2021 at 6:01 pm #8256027

Bobby
Supporter

Languages: English (English )

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

Hi There,

I did confirm and this behavior does depend on where the bot from google is coming from

"This depends on the IP that is resolved for the google bot.
I think most of their IP addresses are in the USA."

Please see this documentation from Google as well
hidden link

March 10, 2021 at 1:38 pm #8275031

basv-25

Hi Bobby,

Thanks for confirming this and thank you for sending through the link.

Can you ask your team how other WPML users solve this? I guess there are lots of WPML users with English pages that use as well GBP as USD. They also like to have (or already have?) that UK users see prices in GBP and US users see prices in USD in their Google search results.

Thanks!

March 10, 2021 at 6:57 pm #8278025

Bobby
Supporter

Languages: English (English )

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

Hello,

Unfortunately, there is no way to solve this from WPML's side as this is controlled by Google.

You can allow your users to pick the currency of their choice rather than redirecting them or perhaps attempt creating a custom function that would overwrite google's IP detection as shown in their documentation.

Related Errata:
https://wpml.org/errata/currency-per-location-or-default-currency-based-on-location-can-show-wrong-prices-in-google-search-results/

March 11, 2021 at 9:18 am #8281983

basv-25

Hi Bobby, thanks for the info. May I ask one last question concerning this? Is it possible to remove a currency for a specific country? So for instance I want to remove the USD currency for the UK users?

Thanks!

March 11, 2021 at 6:33 pm #8288581

Bobby
Supporter

Languages: English (English )

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

With the available features, you could do this if the specific country had its own "language", for example, some users will create 2 custom languages that will be created as regions

1. US -> custom language that is English
2. UK -> custom language that is English as well but uses the UK default locale and code

It's a bit more work but this is how I have seen many get around this.

Within the multicurrency dashboard, you can then disable a currency under a language which is why the above workaround can be useful.

However, I do believe that with some custom work you might be able to achieve this.

Here is our hooks library documentation:
https://wpml.org/documentation/support/wpml-coding-api/wpml-hooks-reference/

3rd party contractors that have extensive WPML experience:
https://wpml.org/contractors/

March 15, 2021 at 9:58 am #8309295

basv-25

Hi Bobby,

I was also thinking about that workaround, but what I don't like is that I have 2 English languages in my language switcher. Also this issue occurs for my CA en AU clients, so then I need to make 3 additional English languages.

Do I understand you well that with some custom work I would be able to remove the USD for the UK? Which contractor can make this possible do you think?

Thanks,