Paragraphs support

Overview

We are happy to fully support localization for the paragraph module.

Anyone using a Lingotek version before 8.x-2.22 / 3.1.x needs to set the paragraphs in the hosted entities as translatable even though the UI will show a warning saying it's not supported. However, today we support the following three scenarios. Please carefully read the documentation to understand the differences and decide which meets your needs.

  1. Paragraphs NOT marked as translatable.

  2. Paragraphs marked as translatable.

  3. Paragraphs marked as translatable, and Paragraphs asymmetric translation widgets module installed.

Changing the paragraph translatability settings with existing content can be problematic, so ensure your content is still visible when changing it. See Implement a migration path for more information.

Paragraphs not marked as translatable

The entity reference will be referencing a unique set of paragraph entities. When using Lingotek for translating that entity with those paragraphs, the translation download will be translating those paragraphs. But as the reference set is the same, if you edit the source paragraph references, the target references will be updated too. So, translation is fully supported, but localization is not. You cannot adjust the references for the source and target paragraphs to better suit your target audience. If you require localization, you should install the paragraphs asymmetric translation widget and use scenario three.

Paragraphs marked as translatable

When translating an entity with paragraphs marked as translatable, the download will create the translated paragraph and update the references in the translation. Since the reference set is different for the source and target paragraphs, editing the source paragraph references will not update the target references. This allows you to localize your content by treating your source and target paragraphs differently. You will need to re-upload the source content and re-download the translated content to make the target content match the source.

Paragraphs marked as translatable with the asymmetric translation widgets module

This scenario is only for sites using Paragraphs asymmetric translation widgets module and its widget for editing translation paragraphs. The asymmetric paragraph module creates a separate copy of each paragraph when users edit the translation, and the Lingotek module does the same thing when used with asymmetric paragraphs. This is the best solution for localization since you can translate with the Lingotek TMS and then edit the translation or source paragraphs without affecting the other.

This is one of the multiple points that we review during our Site Audits. If you want us to perform a site audit of your site, contact support@lingotek.com.

FAQ:

Which paragraphs are supported?

We have tested the Legacy Widget (previously known as Classic) and the Stable Widget (previously known as Experimental) from Paragraphs module.

We also have successfully tested the Asymmetrical Paragraph Classic Widget from the Paragraphs asymmetric translation widgets module.

Changing the paragraph translatability settings with existing content can be problematic, so ensure your content is still visible when changing it. See Implement a migration path for more information.

When downloading a translation, my source language version is showing an outdated version.

You should enable the paragraph field in the Drupal Content Translation Settings, even if it says that It's not supported.

When downloading an updated translation, my translation is showing content from older revisions in the same language.

You should enable the paragraph field in the Drupal Content Translation Settings, even if it says that It's not supported.

Ensure you are using Lingotek module releases 8.x-2.22 or higher or 3.1.0 or higher.

When deleting a paragraph reference in the source, the translation still has the paragraph reference.

Yes, the source content and the translation are referencing a different revision because you set that as translatable. That’s an expected supported scenario. Review your settings, and ensure to read the introduction of this page to see which settings apply to your expectations.

But I cannot remove that from the translation itself without reuploading again if I go to the edit translation form!

Yes, that’s a limitation on paragraphs core widgets. The Asymmetrical Paragraph Classic Widget from the Paragraphs asymmetric translation widgets module purpose is fixing that.

Review your settings and ensure that they are according your expectations. Maybe you shouldn’t have the reference field as translatable.