Skip to content Skip to sidebar

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

Problem:
The client was unable to translate certain elements of a form built with DIVI Engine, including buttons, placeholders, and required messages, despite previously adding a custom XML configuration.

Solution:
We advised the client to modify the existing XML configuration by adding specific attributes to handle the translation of default texts such as 'Submit', 'Next', and 'Prev'. This involves changing these default texts to something else in the original language to make them translatable. Here is the updated XML configuration snippet:

<wpml-config>
<shortcodes>
<!-- alle Formfelder (Text, Textarea, Select, Checkbox etc.) -->
<shortcode>
<tag>de_fb_form_field</tag>
<attributes>
<!-- Beschriftung & Placeholder -->
<attribute>field_title</attribute>
<attribute>field_placeholder</attribute>
<!-- Beschreibung/Infotext unter dem Feld -->
<attribute>description_text_text</attribute>
<!-- Dropdown‑Platzhaltertext -->
<attribute>select_placeholder_text</attribute>
<!-- Inhalt von Content‑Feldern (Text oder HTML) -->
<attribute encoding="allow_html_tags">html_content_editor</attribute>
<!-- Optionslisten als JSON -->
<attribute encoding="json">select_options</attribute>
<attribute encoding="json">checkbox_options</attribute>
<!-- Optional: Radiobutton‑Optionen, falls im Einsatz -->
<attribute encoding="json">radio_options</attribute>
<!-- Optional: eigener Hinweis bei Pflichtfeldern -->
<attribute>required_message</attribute>
<attribute>forgot_password_text</attribute>
<!-- Change the default text in the original language to make it work, e.g. Please enter a valid email address -->
<attribute>email_message</attribute>
<!-- Multi‑Step: Weiter/Zurück‑Buttons -->
<!-- Change the default text in the original language to make it work, e.g. Back / Forward -->
<attribute>step_prev_text</attribute>
<attribute>step_next_text</attribute>
</attributes>
</shortcode>
<!-- gesamtes Formular: Submit‑Button, generische Placeholder etc. -->
<shortcode>
<tag>de_fb_form</tag>
<attributes>
<attribute>title</attribute>
<!-- Change the default text in the original language to make it work, e.g. Send -->
<attribute>submit_button_text</attribute>
<attribute>field_placeholder</attribute>
<attribute>redirect_url_after_submission</attribute>
<attribute>ajax_submit_button_text</attribute>
<attribute>field_placeholder</attribute>
<!-- Optional: Erfolgs‑ und Fehlermeldungen (not tested) -->
<attribute>success_message</attribute>
<attribute>error_message</attribute>
<attribute>processing_text</attribute>
</attributes>
</shortcode>
</shortcodes>
</wpml-config>

Additionally, we suggested contacting the plugin author to ensure their code adheres to standard WordPress methods for making text translatable, as detailed in our documentation: https://wpml.org/documentation/support/how-to-use-gettext/

If this solution does not resolve the issue or seems outdated, we recommend opening a new support ticket. We also highly suggest 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. For further assistance, please visit our 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.

Tagged: 

This topic contains 19 replies, has 0 voices.

Last updated by Dražen 1 month, 1 week ago.

Assisted by: Dražen.

Author Posts
November 12, 2025 at 11:22 am #17570080

andreS-54

Background of the issue:
I am trying to translate the buttons and placeholders of the Formbuilder of DIVI Engine on my site hidden link. Previously, Maiya provided a Custom XML Configuration to solve this issue, but now other fields that were translated before, like checkboxes, have disappeared. Fields with text or HTML content, descriptions, error messages, dropdown select fields, and buttons are still missing. Maiya suggested adding a custom XML configuration to WPML to recognize these strings for translation in the Advanced Translation Editor. I followed the steps provided, but it didn't work.

Symptoms:
Other fields that were translated before, like checkboxes, have disappeared. Fields with text or HTML content, descriptions, error messages, dropdown select fields, and buttons are still missing.

Questions:
How can I translate all fields

November 12, 2025 at 11:46 am #17570318

Dražen
Supporter

Languages: English (English )

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

Hello,

you have been inactive so I have created this ticket.

Please try to reproduce the issue on sandbox site shared, and let me know the steps to check the issue and I will take a look.

- hidden link

Thanks,
Drazen

November 12, 2025 at 11:48 am #17570324

andreS-54

It doesn´t work with the sandbox. I have to install Divi and Divi Engine formbuilder but I can´t login to the Elegant Themes Account on that Page.

November 12, 2025 at 12:45 pm #17570637

Dražen
Supporter

Languages: English (English )

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

Hello,

You don’t need to activate them — you can still reproduce the issue without doing so.

I checked, and the Divi builder form is available when creating a page with Divi.

Could you please try adding the same related fields to the form widget so we can see which part isn’t being translated?

Thanks,
Drazen

November 12, 2025 at 12:55 pm #17570762

andreS-54

I added this and it helps for some. Could you name me the shortcodes for the other fields please?

<wpml-config>
<shortcodes>
<shortcode>
<tag>de_fb_form_field</tag>
<attributes>
<attribute>field_title</attribute>
<attribute>field_placeholder</attribute>
</attributes>
</shortcode>
<shortcode>
<tag>de_fb_form</tag>
<attributes>
<attribute>submit_button_text</attribute>
<attribute>field_placeholder</attribute>
</attributes>
</shortcode>
</shortcodes>
</wpml-config>

November 12, 2025 at 1:04 pm #17570906

Dražen
Supporter

Languages: English (English )

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

Hello,

I can’t determine the code without actually checking the plugin or page content and its fields — that’s why I asked if you could reproduce it there. Once you do, I can inspect the database and create the correct XML for you.

Please let me know once that’s done.

There’s also a similar issue that was reported previously — you can try using the XML shared there:

https://wpml.org/forums/topic/translating-the-divi-engine-form-builder-2/

Regards,
Drazen

November 12, 2025 at 2:29 pm #17571376

andreS-54

Sorry, I didn´t see your second message with your explanation to DIVI.
I didn´t appear then.

But I could replicate the error on the sandbox.
Without the XML Configuration the ATE will show this field and I can translate it, but the field for the button is missing.

[de_fb_form_field field_title="1" admin_title="1" field_id="1" field_type="checkbox" checkbox_options="%91{%22value%22:%22Spielzeug%22,%22checked%22:0,%22dragID%22:-1},{%22dragID%22:0,%22value%22:%22Möbel%22,%22checked%22:0},{%22dragID%22:1,%22value%22:%22Teller%22,%22checked%22:0},{%22dragID%22:2,%22value%22:%22Betten%22,%22checked%22:0},{%22dragID%22:3,%22value%22:%22Laufen%22,%22checked%22:0}%93" _builder_version="4.27.4" _module_preset="default" hover_enabled="0" global_colors_info="{}" form_step="0" current_step="0" sticky_enabled="0"]

If I put the XML this field will disappear but the field with the button will appear.

November 12, 2025 at 2:30 pm #17571377

andreS-54

hidden link

November 12, 2025 at 9:28 pm #17572792

andreS-54

I could find almost all fields with the help of the agent of ChatGPT.
But still the buttons are not translatable. It is a Multistep Form.
Also the required message is missing and the redirection URL.

I am working again here and not in the sandbox.
hidden link

<wpml-config>
<shortcodes>
<!-- alle Formfelder (Text, Textarea, Select, Checkbox etc.) -->
<shortcode>
<tag>de_fb_form_field</tag>
<attributes>
<!-- Beschriftung & Placeholder -->
<attribute>field_title</attribute>
<attribute>field_placeholder</attribute>
<!-- Beschreibung/Infotext unter dem Feld -->
<attribute>description_text_text</attribute>
<!-- Dropdown‑Platzhaltertext -->
<attribute>select_placeholder_text</attribute>
<!-- Inhalt von Content‑Feldern (Text oder HTML) -->
<attribute encoding="allow_html_tags">html_content_editor</attribute>
<!-- Optionslisten als JSON -->
<attribute encoding="json">select_options</attribute>
<attribute encoding="json">checkbox_options</attribute>
<!-- Optional: Radiobutton‑Optionen, falls im Einsatz -->
<attribute encoding="json">radio_options</attribute>
<!-- Optional: eigener Hinweis bei Pflichtfeldern -->
<attribute>required_message</attribute>
</attributes>
</shortcode>
<!-- gesamtes Formular: Submit‑Button, generische Placeholder etc. -->
<shortcode>
<tag>de_fb_form</tag>
<attributes>
<attribute>submit_button_text</attribute>
<attribute>field_placeholder</attribute>
<attribute>ajax_submit_button_text</attribute>
<attribute>field_placeholder</attribute>
<!-- Multi‑Step: Weiter/Zürück‑Buttons -->
<attribute>next_button_text</attribute>
<attribute>previous_button_text</attribute>
<!-- Optional: Erfolgs‑ und Fehlermeldungen -->
<attribute>success_message</attribute>
<attribute>error_message</attribute>
<attribute>processing_text</attribute>
</attributes>
</shortcode>
</shortcodes>
</wpml-config>

November 13, 2025 at 6:50 am #17573316

Dražen
Supporter

Languages: English (English )

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

Hello,

I have checked example in sandbox site, and it works fine if you add next custom XML:

<wpml-config>
<shortcodes>
<shortcode>
<tag>de_fb_form_field</tag>
<attributes>
<attribute>field_title</attribute>
<attribute>field_placeholder</attribute>
  <attribute>checkbox_options</attribute>
</attributes>
</shortcode>
<shortcode>
<tag>de_fb_form</tag>
<attributes>
<attribute>submit_button_text</attribute>
<attribute>field_placeholder</attribute>
</attributes>
</shortcode>
</shortcodes>
</wpml-config>

- hidden link

As for redirection message and URL, I am not sure how did you add this since I do not see it in sandbox example.-

If you can reproduce it there and explain how can I see it and edit it, I will be glad to help further.

Regards,
Drazen

November 13, 2025 at 7:35 am #17573412

andreS-54

Thankyou.

I could find out about the submit button after I tried your XML.
You have to use another word for "SUBMIT" but not the default option. Then it is working.

There is an option redirects in the formbuilder.
I added the URL now on the sandbox but it doesn´t show up in the translation editor.

November 13, 2025 at 7:41 am #17573417

Dražen
Supporter

Languages: English (English )

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

Hello,

I have adjusted XML to include also redirect URL, now it looks like this:

<wpml-config>
  <shortcodes>
    <shortcode>
      <tag>de_fb_form_field</tag>
      <attributes>
        <attribute>field_title</attribute>
        <attribute>field_placeholder</attribute>
        <attribute>checkbox_options</attribute>
      </attributes>
    </shortcode>
    <shortcode>
      <tag>de_fb_form</tag>
      <attributes>
        <attribute>submit_button_text</attribute>
        <attribute>field_placeholder</attribute>
        <attribute>redirect_url_after_submission</attribute>
      </attributes>
    </shortcode>
  </shortcodes>
</wpml-config>

Regards,
Drazen

November 13, 2025 at 8:06 am #17573462

andreS-54

Yes. This works in the sandbox but not in the live page.
Maybe it is that issue that URLs don’t always show up in the ATE?
Option is set for showing all links.

November 13, 2025 at 8:10 am #17573467

Dražen
Supporter

Languages: English (English )

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

Hello,

you need to make small changed to default language and re-translate, example ticket attached.

For link you need to search for them via search form in the top of the editor, as explained in our docs.

- https://wpml.org/faq/how-to-translate-links/#:~:text=To%20translate%20external%20links%3A%C2%A0

Regards,
Drazen

November 13, 2025 at 9:54 am #17573931

andreS-54

Thankyou!

I didn´t work exactly like this but after some trials the URL appeared in the ATE.

Two more things please.

Is it possible to translate "This field is required"?
And also the PREV and NEXT button?