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 |
|---|---|---|---|---|---|---|
| - | 8:00 – 12:00 | 8:00 – 12:00 | 8:00 – 12:00 | 8:00 – 12:00 | 8:00 – 12:00 | - |
| - | 13:00 – 17:00 | 13:00 – 17:00 | 13:00 – 17:00 | 13:00 – 17:00 | 13:00 – 17:00 | - |
Supporter timezone: Europe/Vienna (GMT+01:00)
Tagged: Bug, Custom Work
This topic contains 8 replies, has 0 voices.
Last updated by Lucas Vidal de Andrade 2 weeks, 4 days ago.
Assisted by: Lucas Vidal de Andrade.
| Author | Posts |
|---|---|
| January 13, 2026 at 9:49 am #17724286 | |
|
Kristof |
Hi, This is a follow-up to a previously closed ticket where the sandbox expired before we could replicate the issue: We're experiencing a critical bug where translations for custom Gutenberg blocks exist in the database and are marked as complete (status=10), but are never applied to the translated post content. --- There's an encoding mismatch between string extraction and translation lookup. We have hex dump proof: WPML icl_strings.value ends with: ...6572207365696e2eC2A0 (NBSP added by WPML) WPML modifies strings during extraction (adding xC2xA0, decoding & → &), but searches for the modified version when applying translations → no match found → original text displayed. --- 1. Create custom Gutenberg block using RichText.Content --- -- Translations exist and are complete: --- We're happy to: The fix should ensure consistent encoding: extraction must match lookup. Looking forward to your response. Best regards |
| January 15, 2026 at 1:59 pm #17734010 | |
|
Kristof |
Hi, Thank you for setting up the Sandbox. I've successfully reproduced the bug. Bug Summary: Reproduction URLs: What you'll see on the German page: Fields WITH ampersand - NOT translated (shows English original): Fields WITHOUT ampersand - translated correctly: Root Cause Analysis: The issue is in wpml-page-builders/classes/Integrations/Gutenberg/strings-in-block/class-html.php around line 200: if ($type !== 'VISUAL') { The Problem: Demo Plugin: Please let me know if you need any additional information. Best regards |
| January 16, 2026 at 11:48 am #17736716 | |
|
Lucas Vidal de Andrade WPML Supporter since 11/2023
Languages: English (English ) Spanish (Español ) German (Deutsch ) Portuguese (Brazil) (Português ) Timezone: Europe/Vienna (GMT+01:00) |
Hello there, Thank you so much for sharing all the details. I tried a few quick hot-fixes on the Sandbox, but also could not find a solution. I've escalated your issue to our dev team; they might take a few days to get back to us. I'll keep you informed. Thank you so much for your cooperation and patience so far! |
| January 23, 2026 at 8:28 am #17756115 | |
|
Lucas Vidal de Andrade WPML Supporter since 11/2023
Languages: English (English ) Spanish (Español ) German (Deutsch ) Portuguese (Brazil) (Português ) Timezone: Europe/Vienna (GMT+01:00) |
Hey there, We've checked the custom implementation and plugin. - thanks for bringing that to our attention. It seems like a hash mismatch caused by inconsistent HTML entity decoding. Here's probably what's happening: 1. WP saves & as & in post_content (expected behavior). This is just a guess for now, based on the provided data, and still needs confirming. For the time being, we don't have a deadline on when to fix this. As a workaround: edit the original content with the "code editor" (instead of the "visual editor"), and replace & with & only on the content. |
| January 26, 2026 at 9:37 am #17761589 | |
|
Kristof |
Hi Lucas, Bug Tracker: Has an internal bug report been created for this issue? If so, could you share the ticket/issue number so I can track its status? Regarding the suggested workaround (replacing & with & in the code editor): This is unfortunately not feasible for us, as we have hundreds of existing posts and our content editors work exclusively in the visual editor. |
| January 26, 2026 at 10:07 am #17761695 | |
|
Lucas Vidal de Andrade WPML Supporter since 11/2023
Languages: English (English ) Spanish (Español ) German (Deutsch ) Portuguese (Brazil) (Português ) Timezone: Europe/Vienna (GMT+01:00) |
Hello Kristof, We have created an internal ticket for this issue, but unfortunately it's not public, so I cannot share that here. As for a public 'known issue', we haven't created one so far, as it's still being analyzed. I'll double-check with the appropriate team, if we can provide you with a more definite timeline and workaround. I'll be back once I have new information. |
| February 11, 2026 at 8:46 am #17811716 | |
|
Lucas Vidal de Andrade WPML Supporter since 11/2023
Languages: English (English ) Spanish (Español ) German (Deutsch ) Portuguese (Brazil) (Português ) Timezone: Europe/Vienna (GMT+01:00) |
Hello Kristof, Thank you for waiting. I double-checked, and we don't have a deadline to implement this fix, only an errata: The issue is enqueued on our next dev cycles, but its implementation depends on its priority. I appreciate your understanding regarding this. Please let me know if you have other questions. |
| February 16, 2026 at 7:22 am #17824403 | |
|
Kristof |
Thanks for your reply. But please tell your cleanup bot to not remove this ticket until the issue is resolved! |
| February 16, 2026 at 9:06 am #17824825 | |
|
Lucas Vidal de Andrade WPML Supporter since 11/2023
Languages: English (English ) Spanish (Español ) German (Deutsch ) Portuguese (Brazil) (Português ) Timezone: Europe/Vienna (GMT+01:00) |
Hello, I still do not have any new information. I'll make sure this ticket does not get closed. Thank you. |
