We have a custom post type with WYSIWYG fields (created with meta Box) containing external links and some text. If the German translation of a post is updated, and we do not touch these links (the URLs are separate entries in the WPML Advanced Translation Editor), the translations of these links get lost and the English links are displayed in the frontend. The translated texts in the same fields are still fine though.
If we go into the ATE again to correct the lost link translations, we can save that properly. And on the next update, the problem does not return, so far.
Here's what happens in detail, according to my translator:
1. I make some edits in the EN post.
2. (Since I suspected there's a bug going on:) I don't enter the WPML ATE yet. Instead, I first check whether external links are still properly translated on the DE frontend. They are.
3. I then enter the WPML ATE. I check if the previously entered DE translations for links are still visible. They are.
4. Only then, I update the DE translations of the edited/added EN strings in the ATE, without changing anything to the URL translations.
5. I save and publish the translation.
6. Now, the DE translations of the links are lost. They point to EN URLs on the frontend. If I re-enter the ATE, the DE URL translations are gone.
7. I restore the URL translations. They're now saved and published correctly.
8. If I make a new edit in both EN and DE through the ATE, the restored URL translations seem to be saved correctly. They don't disappear again, as far as I can tell.
Even though it looks like a one-time manual correction fixes this, it is a lot of work to do that for all our posts. What is causing the problem and how do we fix it?
I understand the issue you're having and will try my best to assist you in this matter.
Please note that all internal links should automatically update in other languages, based on the availability of their translations. However, if you've translated links using the Translation Editor and notice that a link disappears following an update, it could be due to the slug of the translated post being overwritten somehow.
When linking to a post/page, we always recommend using the relative URL format instead of the full URL. For example- While linking to the "contact" page, rather than using 'hidden link', simply use '/contact'. Using the relative URL format often resolves issues related to links pointing incorrectly in other languages. Would you please create a new page and try to recreate the issue after relatively adjusting the link in the WYSIWYG field?
You can check this article to know more about the URL formats: hidden link
After updating the URL format on the default page, make sure to update the translation as well.
Please let me know the update. I will be happy to help if you need further assistance in this matter.
Thank you for confirming that the links are external.
With External links, there is a limitation set in ATE which is making the external links disappear while updating the translation. However, our ATE team is aware of the issue and actively working on it. Hopefully, the issue will be solved soon.
For now, Please continue updating the URLs in the ATE as you have been doing. I will keep you updated as soon as there is any progress. Thank you for your patience and understanding in this regard.