A translation pack is a set of language files for one plugin or theme version. Packs come from Interpres Pro sites that chose to share what they translated, and from our own seed translations. Nothing goes out to other sites until it has passed the steps below.
.po file (source strings and their translations), the compiled .mo, and, when the plugin has admin JavaScript text, a small JSON map for those strings.Every incoming pack is unpacked on the server and checked line by line. The checks run again each time a reviewer opens the pack, so they always use the latest checker.
| Check | What it catches |
|---|---|
| Placeholders | Every %s, %1$s, %d in the source must appear in the translation, in a form the plugin can fill in. Numbered and unnumbered forms of the same placeholder count as equal; a reordered or missing one is an error. Plural entries are checked against the plural source. |
| HTML | Tags in the source (<a>, <strong>, <br> …) must come back with the same tag set, so links and formatting survive. |
| Untranslated | Translations identical to the source are listed, except URLs, e-mail addresses and brand names that should stay as they are. |
| JavaScript strings | Fragments that are not real sentences (half of a code string, unbalanced quotes) are excluded from the pack and from the counts. |
| Sender | The pack must come from a site with an active Interpres Pro license. One site can have one pending pack per plugin version; sharing again replaces the earlier one. |
A reviewer opens each pack and sees:
The reviewer then approves, holds (to test the pack on a site first) or rejects. A wrong line can be corrected on the spot; the correction is delivered to every site that installs the pack, without touching the pack file itself. Approvals can be reverted: the previous public pack is restored, or the pack is hidden if it was the first for that version.
wp-content/languages folder and can be removed with one click.Questions or a translation that looks wrong? Write to hello@interpres.ing with the plugin name, version and the string.