If you use Form Forge for your contact / signup / booking forms, every form’s labels, placeholders, option choices, submit button, and success message can be translated through the same String Translation page.
How the integration works
When you save a Form Forge form, Form Forge tells Lang Forge “here are this form’s user-facing strings, please make them translatable”. The strings are stored under a per-form domain — formforge: — so each form has its own group on the String Translation page.
When a visitor opens a translated page that contains the form, Lang Forge swaps in the translations for the visitor’s current language. When they submit the form, the success message comes back in their language too.
Step-by-step: translating a form
- Build your form in Form Forge in your default language. Click Save Form.
- Go to Lang Forge > String Translation.
- In the Domain dropdown, pick
formforge:(the form id is shown in the Form Forge form list and the form-edit URL). - For each row, type the translation into the field for the target language — or use AI Translate All (PRO) to fill them in. The button only becomes clickable after you pick a specific domain and the site has an active Avakode-connected / licensed AI path. If either requirement is missing, the button stays visible but disabled with a short hint beside it.
- Click Save Translations.
- Visit your translated page that contains the form. Labels, options, the submit button, and the success message are now in the visitor’s language.
What gets translated
| Form element | Translatable | Notes |
|---|---|---|
| Field label | Yes | Every field with a label |
| Field placeholder | Yes | If the form designer set one |
| Field description (help text) | Yes | The hint below a field |
| Option labels for select / radio / checkbox | Yes | One translation per option |
| Submit button text | Yes | Form-level setting |
| Success message | Yes | Shown after a successful submission |
| Schedule message | Yes | Shown when the form is scheduled closed |
What stays in the source language
- What the visitor types (their name, email, message) is stored as-is in the form submission. It is never auto-translated.
- Field IDs and option values are language-neutral, so submissions and exports are consistent regardless of which language the visitor used.
- Submission labels in the admin are always shown in the form’s authoring language so the inbox is consistent.
When you change a form
- Editing a label or placeholder, then saving the form, re-registers the new wording on the String Translation page automatically. Old translations of unchanged strings stay in place.
- Adding a new option to a select / radio / checkbox field registers the new option label on the next save.
- Deleting a form removes its translation domain automatically — the String Translation page won’t accumulate orphan rows.
> Tip: If the form’s formforge: domain doesn’t appear in the dropdown, save the form once (without changing anything) — the registration only fires on save, so a form created before this integration was installed needs a no-op save to populate.
> Note: Today the integration covers Form Forge specifically. Other plugins (and themes) use the Automatic String Registration mechanism described in the previous section — different mechanism, same admin page.
[Screenshot: The String Translation page filtered to a formforge:42 domain showing label, placeholder, option label, and submit_text strings ready for translation]
—