Adding a New Locale – Template

This page goes through the checklist of actions required to add a new localeLocale Locale = language version, often a combination of a language code and a region code, for instance es_MX denotes Spanish as it’s used in Mexico. A list of all locales supported by WordPress in https://make.wordpress.org/polyglots/teams/ to translate.wordpress.orgtranslate.wordpress.org The platform for contributing to the translation of WordPress core, themes and plugins..

All communication related to adding the locale happens in the comments below the request. When a request for a new locale is added, a polyglots teamPolyglots Team Polyglots Team is a group of multilingual translators who work on translating plugins, themes, documentation, and front-facing marketing copy. https://make.wordpress.org/polyglots/teams/. mentor picks the request up and posts the following checklist as a comment on the request. The request can be managed by one or more members of the polyglots leadership team. It is recommended that when action/information is needed from either the person requesting the locale or one of the polyglots leads, they get mentioned in a comment in the same request.

[Locale name] Research

Ethnologue reference: http://www.ethnologue.com/language/
ISO 639-3ISO 639-3 ISO 639-3 code is an international standard for language codes in the ISO 639 series. It defines three‐letter codes for identifying languages. code:

Locale
Country code:
Plural forms:
Language native name:
Sub-domain:
Site Title:
Site Description:
Admin Username(s):

$locale = new GP_Locale();
$locale->english_name = '';
$locale->native_name = '';
$locale->lang_code_iso_639_1 = '';
$locale->lang_code_iso_639_2 = '';
$locale->lang_code_iso_639_3 = '';
$locale->country_code = '';
$locale->wp_locale = '';
$locale->slug = '';
locale->nplurals = ;
$locale->plural_expression = '()';
$locale->google_code = '';
$locale->facebook_locale = '';

Here’s an example from when Maltese was added. Note that the locale entries are sorted alphabetically on the locale code (in this case “mlt”):

$mlt = new GP_Locale();
$mlt->english_name = 'Maltese';
$mlt->native_name = 'Malti';
$mlt->lang_code_iso_639_1 = 'mt';
$mlt->lang_code_iso_639_2 = 'mlt';
$mlt->lang_code_iso_639_3 = 'mlt';
$mlt->country_code = 'mt';
$mlt->wp_locale = 'mlt';
$mlt->slug = 'mlt';
$mlt->nplurals = 4;
$mlt->plural_expression = '(n == 1) ? 0 : ((n == 0 || n % 100 >= 2 && n % 100 <= 10) ? 1 : ((n % 100 >= 11 && n % 100 <= 19) ? 2 : 3))'; $mlt->google_code = 'mt';
$mlt->facebook_locale = 'mt_MT';

o Which countries use that language
o Research details: Wikipedia for larger context, Ethnologue for details
o Check that the ISO 639-1, ISO 639-2, ISO 639-3 codes match the request
o Check if the locale already exists as a wp locale: https://make.wordpress.org/polyglots/teams/
o Check that it isn’t already in the list of GlotPress locales: https://github.com/GlotPress/GlotPress-WP/blob/develop/locales/locales.php

Top ↑

Add the locale to GlotPress

o Update the data for the locale on the locale PHP file
o Deploy to GlotPress & WordPress servers

Top ↑

Add the Locale Site

o Create new site
o (Add additional admin users)
o Update site description
o Create the locale association
o Connect with Jetpack
o Promote all admin users to Global Translation Editors

Top ↑

Add strings to the locale at Translate.wordpress.org

o Create translation sets
o (Create a new SVN directory for the locale)

Top ↑

Onboard new translation editor

o Send links to Rosetta site and project on translate.wordpress.org
o Send a link and encourage to prepare Rosetta site (Send link to handbook part)
o Encourage new GTE to form a team
o Send information about Slack and weekly meetings
o Send a link to Translation Handbook (General expectations)

Top ↑

Locale addition message example

Your site and projects have been updated/created.

- Site: https://LOCALE.wordpress.org
- Translate WordPress core: https://translate.wordpress.org/locale/LOCALE/default/wp/dev/
- Translate WordPress.org: https://translate.wordpress.org/locale/LOCALE/default/meta/wordpress-org/

You can export/import translations as you want. You’ll find the links at the end of each translation table.

Please make sure you’ve read our general expectations <a href="https://make.wordpress.org/polyglots/handbook/translating/expectations/">for translations</a> and for <a href="https://make.wordpress.org/polyglots/handbook/rosetta/rosetta-expectations/">the site</a>. We have meetings every week and at various hours every week. Please check the <a href="https://wordpress.slack.com/messages/polyglots">#polyglots</a> channel on <a href="https://make.wordpress.org/chat/">Slack</a>. You are also welcome to ask questions on the same channel at any time!

Also, we strongly encourage you to form a strong team of translators. For tips on translation collaboration and team building, read <a href="https://make.wordpress.org/polyglots/handbook/about/how-we-work/translation-collaboration-team-building-tips/">this documentation</a>. You can use the <a href="https://LOCALE.wordpress.org/team/">special team site</a> for coordination.

Happy translating!

Last updated: