Skip to content Skip to sidebar

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

Problem:
You are developing a site using WPML and have a custom post type with content, images, and data shared between the original post and its translations. You need to update translations without losing specific paragraphs that are unique to each language version.
Solution:
Unfortunately, it is not possible to prevent specific paragraphs in translated content from being overwritten when updating translations using WPML's standard features. If you require a unique layout or paragraph that isn't simply a translation of the original content, you will need to disable the Translation Editor and manage that page manually. For more information on using different translation editors for different pages, please visit https://wpml.org/documentation/translating-your-contents/using-different-translation-editors-for-different-pages/.

If this solution does not apply to your case, or if it seems outdated, we highly recommend checking related known issues at https://wpml.org/known-issues/, verifying the version of the permanent fix, and confirming that you have installed the latest versions of themes and plugins. If further assistance is needed, please open a new support ticket at WPML support forum.

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 3 replies, has 0 voices.

Last updated by Andrey 2 weeks, 4 days ago.

Assisted by: Andrey.

Author Posts
October 19, 2025 at 2:30 pm #17496976

maciejK-33

Background of the issue:
I am developing a site using WPML and have a custom post type with content, images, and data shared between the original post and its translations. Some paragraphs in the content are unique to each language and should not be overwritten when updating translations after changes in the original post. For example, I have a flight offer paragraph that differs between English and German versions.

Symptoms:
I want to update translations without losing specific paragraphs that are unique to each language version.

Questions:
How can I prevent specific paragraphs in translated content from being overwritten when updating translations?
Is there a hook or filter in WPML that I can use to mark parts of the main content to remain unchanged during translation updates?

October 20, 2025 at 7:29 pm #17500875

Andrey
WPML Supporter since 06/2013

Languages: English (English ) Russian (Русский )

Timezone: Europe/Kyiv (GMT+02:00)

Thank you for contacting WPML support.

Unfortunately, it’s not possible to achieve such a scenario. If you’d like to have a unique layout/paragraph that isn’t simply a translation of the original content, you’ll need to disable the Translation Editor and manage that page manually.

You can find more information here:
https://wpml.org/documentation/translating-your-contents/using-different-translation-editors-for-different-pages/

October 21, 2025 at 7:04 am #17501509

maciejK-33

Thank you for your answer.
Is it possible to create some kind of marker or bracket that could wrap specific elements within the text — so that they remain part of the regular paragraph and content, but WPML would treat them differently and skip them during translation?

I could write the necessary code and configuration to define such an element and signal WPML to ignore it in translations.
Would that be possible, or is WPML not designed to allow this kind of customization?

Best regards,
Maciej

October 21, 2025 at 8:37 am #17501979

Andrey
WPML Supporter since 06/2013

Languages: English (English ) Russian (Русский )

Timezone: Europe/Kyiv (GMT+02:00)

Thank you for your feedback.

Yes, there isn’t a way to apply this type of customization, nor are there specific hooks available for it.

Could you please describe the complete scenario — how you built the post, what you’re currently getting, what is being overwritten, and how you’d like it to work instead? Including examples and screenshots. Let's see if a possible workaround exists based on that.