Skip to content Skip to sidebar

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

Problem:
The client is facing two issues with their variable, virtual, and downloadable products on a multilingual website. The first issue involves the German translations of product attribute labels not appearing on the frontend, despite being translated and synchronized. The second issue concerns the handling of different downloadable files for product variations across different language versions, where file URLs are overwritten upon synchronization.
Solution:
For the first issue, we recommend checking if the theme update resolves the problem, as sometimes theme conflicts can affect translations. If the issue persists, the client might consider using a custom filter in the functions.php file as a temporary workaround:

add_filter('woocommerce_attribute_label', function($label, $name, $product) {<br />    if (!defined('ICL_LANGUAGE_CODE') || ICL_LANGUAGE_CODE !== 'de') {<br />        return $label;<br />    }<br />    $translations = [<br />        'pa_tsvyat'  => 'Farbe',<br />        'pa_vazrast' => 'Alter',<br />    ];<br />    return $translations[$name] ?? $label;<br />}, 20, 3);

For the second issue, ensure that the WPML Translation Editor settings are configured to display all links. Make a minor update to the original language content to refresh the translation job, allowing the file URLs to be editable in the translation editor.

Please note that these solutions might become outdated or may not directly address your specific case. If these steps do not resolve your issues, we highly recommend checking the related known issues, verifying the version of the permanent fix, and confirming that you have installed the latest versions of themes and plugins. If problems persist, 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 17 replies, has 0 voices.

Last updated by pavlinaD 4 weeks ago.

Assisted by: Shekhar Bhandari.

Author Posts
May 29, 2026 at 10:23 am #18069051

pavlinaD

Hi,

We are currently experiencing 2 issues with our variable, virtual + downloadable products on our website. Our primary language is Bulgarian and we're translating to German (language version is public) and English (language version is hidden).

Issue #1: We have 2 global attributes - Възраст and Цвят, with a few terms in each. Before we ever created or translated our variable products, we first translated the attributes via the Taxonomy translation - each term + labels and slug. The terms are synchronized correctly, but the terms labels don't appear translated on the frontend only for the German version. Example:
BG: hidden link
EN: hidden link -> see example how it's translated: hidden link
DE: hidden link -> see example how it's translated: hidden link

IMPORTANT: The terms are synchronized and we don't have an issue with them, it's only the label that's not shown translated in the DE frontend specifically.

The product translations are synched from BG to both EN and DE. We are translating via the Advanced translation editor. We tried translation via the WP admin -> Products, as well as setting it up as a job translation and translation via the WP admin -> WPML -> Translations menu. None fixed the issue.

Some more things we've tried:
1. Transients cleanup via WP Rocket database optimization
2. WPML cache clearing + all caches cleared in general (Elementor, WP Rocket)
3. WooCommerce -> Status -> Tools -> Clear transients and Clear WooCommerce transients + Regenerate product lookup tables
4. WPML -> Support -> Troubleshooting -> Fix element_type collation
5. WPML -> Support -> Troubleshooting -> Set language information
6. WPML -> Support -> Troubleshooting -> Fix terms count
7. Small change in the original BG product -> Saving -> resynchronize translation
8. These texts don't appear in Strings translation, nor in Admin texts - we don't think they are supposed to, as they are not translated as single strings, but an FYI for you

Additionally, we were able to determine:
1. The DE attribute label translations are corrupted in WooCommerce Multilingual → Attributes.
2. WPML has stale/corrupt translation records for those attribute taxonomies.
3. The DE translation exists visually in admin but is not being used by wc_attribute_label().

This code fixes it if we use it in functions.php, but this seems like a quick hack rather than a fix of the issue:
add_filter('woocommerce_attribute_label', function($label, $name, $product) {

if (!defined('ICL_LANGUAGE_CODE') || ICL_LANGUAGE_CODE !== 'de') {
return $label;
}

$translations = [
'pa_tsvyat' => 'Farbe',
'pa_vazrast' => 'Alter',
];

return $translations[$name] ?? $label;

}, 20, 3);

Please provide a viable fix for this issue. We have a staging environment we can provide access to for you to troubleshoot.

Issue #2: As our products are downloadable, we have different files attached to each variation. These files must be different per language version. We have enabled the "different files with translations of products" mode. When we translate a product (via Advanced translation editor), we have fields to translate each downloadable file's Name, we do not have a field to input another file per language (URL address of file) - this is copied over from the primary language. So, once the translation is completed, we edit the EN/DE versions manually and the field to input a URL address of file is unlocked => we select the files we need for the secondary language versions. However, as soon as we synchronize the product again, the primary language files (not name, only file URL address!) are copied over again => we have to again manually select all other lang versions files. This is quite tedious, leaves room for a lot of error, and overall doesn't appear as a streamlined process. We do not have an option not to synchronize the translations, due to changes in the variations, etc.

We are aware and reviewed this topic: https://wpml.org/errata/downloadable-file-urls-may-be-overwritten-when-editing-translated-products-directly/, however we don't see that it specifically targets variable products (maybe for variable products in a whole other issue?) + ever since introducing and translating variable products into our website, we've been using ver 5.5.5 of the plugin stated.

Please advise how to handle this better.

Thanks in advance,
Webdesh team

June 1, 2026 at 11:15 am #18073042

Shekhar Bhandari
WPML Supporter since 03/2015

Languages: English (English )

Timezone: Asia/Kathmandu (GMT+05:45)

Hello there,

Thank you for contacting WPML support. I'd be happy to assist you on this issue.

To debug this issue further, I would need to check your site settings once, for this I would need temporary access (wp-admin and ftp) to your site.

So could you please provide me with those details, you will find the needed fields for this below the comment area when you log in to leave your next reply.
hidden link

This info is private and available to you and WPML supporters only.
Read more about this: https://wpml.org/purchase/support-policy/privacy-and-security-when-providing-debug-information-for-support/

Note:
Backup your sites before providing the credentials or if possible provide credentials for the test site

Look forward to your reply.

Thanks

June 2, 2026 at 1:18 pm #18075723

Shekhar Bhandari
WPML Supporter since 03/2015

Languages: English (English )

Timezone: Asia/Kathmandu (GMT+05:45)

Hello there,

Can you please use the solution provided here and see if it helps, this look exactly the same issue: https://wpml.org/forums/topic/translations-of-attributes-keep-dissapearing/?paged=3#post-18052118

Look forward to your reply.

Thanks

June 3, 2026 at 1:29 pm #18078954

pavlinaD

Hi,

Unfortunately no, this did not fix our issue at all. Could you please check for our case specifically?

I would also like to remind you that I've touched on another issue in this ticket as well, which you haven't provided information for. Let us know if we must open a separate one to receive support for this.

Thanks.

June 3, 2026 at 1:40 pm #18079021

Shekhar Bhandari
WPML Supporter since 03/2015

Languages: English (English )

Timezone: Asia/Kathmandu (GMT+05:45)

Hello,

I will take a look at the other issue once the first one is resolved. This will help keep the testing and debugging process less confusing. Alternatively, you can open a new chat if you would like continuous support for both issues simultaneously.

Regarding the label issue, I tried using the FTP details you provided, but they do not seem to be working. Could you please verify and update the FTP credentials so I can check this further?

Looking forward to your reply.

Thanks

June 4, 2026 at 8:38 am #18080702

Shekhar Bhandari
WPML Supporter since 03/2015

Languages: English (English )

Timezone: Asia/Kathmandu (GMT+05:45)

Hello,

I can reproduce the issue. Interestingly, it does not occur when using a default theme. Have you made any custom modifications to the theme related to labels?

Also, if it's okay with you, may I download a local copy of your site to investigate this further?

I look forward to your reply.

Thanks

June 4, 2026 at 9:32 am #18080854

pavlinaD

Hi, thanks for looking into this further.

We haven't made any customizations to labels specifically, but when we switch to the Astra parent theme, the issue persists, so in any case it's not any of our customizations.

Yes, you may download a local copy, no problem.

June 5, 2026 at 4:26 am #18082927

Shekhar Bhandari
WPML Supporter since 03/2015

Languages: English (English )

Timezone: Asia/Kathmandu (GMT+05:45)

Hello there,

I am currently discussing this with our second-tier support team and will update you with their feedback soon.

Thanks

June 5, 2026 at 11:40 am #18083763

Shekhar Bhandari
WPML Supporter since 03/2015

Languages: English (English )

Timezone: Asia/Kathmandu (GMT+05:45)

Hello there,

Can you please check the issue, our 2nd tier mentioned that after updating the astra theme the issue is now resolved.

Look forward to your reply.

Thanks

June 5, 2026 at 12:42 pm #18083920

pavlinaD

Hi, thank you, issue #1 seems fixed after we updated the theme.

Please now provide support for issue #2 as well:
Issue #2: As our products are downloadable, we have different files attached to each variation. These files must be different per language version. We have enabled the "different files with translations of products" mode. When we translate a product (via Advanced translation editor), we have fields to translate each downloadable file's Name, we do not have a field to input another file per language (URL address of file) - this is copied over from the primary language. So, once the translation is completed, we edit the EN/DE versions manually and the field to input a URL address of file is unlocked => we select the files we need for the secondary language versions. However, as soon as we synchronize the product again, the primary language files (not name, only file URL address!) are copied over again => we have to again manually select all other lang versions files. This is quite tedious, leaves room for a lot of error, and overall doesn't appear as a streamlined process. We do not have an option not to synchronize the translations, due to changes in the variations, etc.

We are aware and reviewed this topic: https://wpml.org/errata/downloadable-file-urls-may-be-overwritten-when-editing-translated-products-directly/, however we don't see that it specifically targets variable products (maybe for variable products in a whole other issue?) + ever since introducing and translating variable products into our website, we've been using ver 5.5.5 of the plugin stated.

Please advise how to handle this better.

Thanks in advance,
Webdesh team

June 8, 2026 at 4:00 am #18086053

Shekhar Bhandari
WPML Supporter since 03/2015

Languages: English (English )

Timezone: Asia/Kathmandu (GMT+05:45)

Hello there,

Glad to know that the first issue is fixed.

Regarding the second issue, instead of using editors, can you try the steps as mentioned here and see if it helps? https://wpml.org/documentation/getting-started-guide/media-translation/#how-to-display-different-media-per-language

Look forward to your reply.

Thanks

June 8, 2026 at 1:34 pm #18087602

pavlinaD

Hi, thank you for the suggestion, but for some reason, our downloadable documents are not at all found in Media translation. For example:
1. This file is attached to a variation in our BG version: hidden link
2. It exists in Media, in the BG version: hidden link
3. When we search in Media translation, it is not found: hidden link (this is the actual url with the query: hidden link)

Do we need to scan or something, to make them appear? Did you test yourself if this works and is it a known fix/the way to do things correctly, or you're providing a suggestion we may explore?

June 9, 2026 at 5:48 am #18088751

Shekhar Bhandari
WPML Supporter since 03/2015

Languages: English (English )

Timezone: Asia/Kathmandu (GMT+05:45)

Hello there,

It was a suggestion to try. I tested it myself and the suggested workflow will not work in this condition.

I have created a test site to test this further, you can login to the site by using the following link:hidden link

What I did here:
- Created two products (Simple and Variable)
- Added downloadable files to those products
- Translated the product
- Edited the product in translations and adjusted the file
- Re-updated the products in original language and translations,
- The files aren't changed.

Can you please check this once and see if you can replicate the issue on this test site once?

Look forward to your reply.

Thanks

June 15, 2026 at 9:32 am #18103415

pavlinaD

Hi, we tested further and want to report these findings:
1. We tested to delete the German translation of the product altogether, then empty the trash and translate again - the downloadable product file fields were not detected still.
2. We created a brand new product, then translated it to German and the file fields were there, except for one. So this is still not a 100% solution.

We understand how it may work in a sandbox, however have in mind that in a real project things are changing over time - we may need to tweak the WPML settings, delete/update product content, etc. We rely that your product is able to sync all these things live.

This is where I think the issue lies exactly - during the development of the site and our services, we've used different settings on the WPML and Woo products (have in mind that our website is a product that's been in development for more than half a year, so quite a few changes, updates, etc., have happened).

We would urge you to focus on working and solving the issue on our environment specifically, hopefully you will be able to find where your product is potentially not syncing correctly.

Looking forward to hearing from you.

June 15, 2026 at 9:40 am #18103428

Shekhar Bhandari
WPML Supporter since 03/2015

Languages: English (English )

Timezone: Asia/Kathmandu (GMT+05:45)

Hello there,

Thank you for the details.

1. We tested to delete the German translation of the product altogether, then empty the trash and translate again - the downloadable product file fields were not detected still.
2. We created a brand new product, then translated it to German and the file fields were there, except for one. So this is still not a 100% solution.

The fields will not by synchronized automatically so those file fields being empty are normal, you will need to add them manually for translations.

You mentioned earlier that the links are overridden, I will suggest you to check if this still exists.

Look forward to your reply.

Thanks