Languages and translation
By the end of this page you will know how TrazoForms gets its translations, how it decides which language to use, and how to add one of your own.
Where translations come from
Section titled “Where translations come from”TrazoForms is written in English. The plugin does not carry translation files inside its ZIP: translations are delivered by WordPress itself from translate.wordpress.org, the same way as for any plugin in the WordPress.org directory. When a translation exists for your site’s language, WordPress downloads it and keeps it up to date with the plugin, with no file to upload.
Spanish is being prepared for translate.wordpress.org. Until a language is published there, it appears in English.
How the language is chosen
Section titled “How the language is chosen”| Where | Language used |
|---|---|
| Published form | The site’s language (Settings → General → Site Language). |
| Builder and every other admin screen | Your WordPress user’s own language, if you set one under Users → Profile → Language; otherwise the site’s language. |
What is and is not translated
Section titled “What is and is not translated”- Translated: everything the plugin says on its own — the builder, the default messages (“This field is required.”), the step counter, the error summary, and the texts of new templates and notifications.
- Not translated: what you write. The labels, help texts, options and messages of your own forms appear exactly as you wrote them, in whatever language you typed them.
Template texts are created in the site’s language at the moment you create the form, and after that they are yours to edit.
Translate TrazoForms into another language
Section titled “Translate TrazoForms into another language”The best way is to contribute at translate.wordpress.org, where the community translates every plugin. Once the translation is approved, it installs automatically on every site that uses that language.
For a private translation on your own site:
- Get the translation template,
languages/trazoforms.pot, from inside the plugin folder. - Translate it with Poedit or a plugin such as Loco Translate.
- Save the result as
.po/.mofiles named for your locale, for exampletrazoforms-fr_FR.mo, inwp-content/languages/plugins/.
Edge cases
Section titled “Edge cases”- A string that has no translation yet falls back to the original English.
- Live counters and other messages written directly in JavaScript — such as the “characters left” counter — use WordPress’s own plural rules (
_n()fromwp.i18n), not a fixed pair of “singular / everything else” texts. This matters for languages with more than two plural forms, such as Russian, Polish, Czech or Arabic: each number gets the grammatically correct word form, the same as the rest of the plugin.
Next step
Section titled “Next step”You now have a full picture of how a form behaves. See Troubleshooting if something is not working as expected.