Adding a New Locale: Template

This page goes through the checklist of actions required to add a new locale to translate.wordpress.org.

All communication related to adding the locale happens in comments below the request. When a request for a new locale is added, a polyglots team 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 [Locale name] Research

Ethnologue reference: http://www.ethnologue.com/language/
ISO 639-3 code:

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

$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>1 && n%100<11) ? 1 : (n%100>10 && n%100<20 ) ? 2 : 3)';
$mlt->google_code = 'mt';
$mlt->facebook_locale = 'mt_MT';
  • Which countries use that language
  • Research details: Wikipedia for larger context, Ethnologue for details
  • Check that the ISO 639-1, ISO 639-2, ISO 639-3 codes match the request
  • Check if the locale already exists as a wp locale: https://make.wordpress.org/polyglots/teams/
  • 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  Add the locale to GlotPress 

  • Update the data for the locale on the locale PHP file
  • Update external version of GlotPress
  • Deploy to GlotPress & WordPress servers

Top ↑

Add the Locale Site Add the Locale Site

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

Top ↑

Add strings to the locale at Translate.wordpress.org Add strings to the locale at Translate.wordpress.org

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

Top ↑

Onboard new translation editor Onboard new translation editor

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