This page is tagged because it NEEDS REVIEW. You can help the Joomla! Documentation Wiki by contributing to it.
More pages that need help similar to this one are here. NOTE-If you feel the need is satistified, please remove this notice.
Joomla! uses three language packages, one for the front end, one for the administrator and one for installation. Ideally you will create all three.
A translation pack consists of an xml file, a blank index file and a set of *.ini files containing the language strings for your language. The easiest way to understand this structure is to look at the files in the language/en-GB folder of your Joomla! installation.
This is an excerpt from en-GB.mod_login.ini
BUTTON_LOGIN=Login BUTTON_LOGOUT=Logout DESCLOGINFORM=This Module displays a username and password Login form. It also displays a link to retrieve a forgotten password. If User registration is enabled, (refer to the Global Configuration settings), then another link will be shown to invite Users to self-register. ENCRYPT LOGIN FORM=Encrypt Login Form FORGOT_YOUR_PASSWORD=Forgot your password? FORGOT_YOUR_USERNAME=Forgot your username? GREETING=Greeting
To create a package for your language you change the strings to the right of the =.
Many people find it helpful to use the Translation manager extension. This helps by automating the creation of the files.
Language naming convention in Joomla are language and ISO code. Use 2 letters when available. The list is available here.
Because language strings may change it is best to create your packages using either the nightly build or subversion.
Name of package should be: xx-XX //using your language's ISO code.
If, for any reason, ini or xml language files are edited manually with a text editor, they have to be saved with the encoding UTF8 NO BOM.
For practical information on the way to make core Translation files for Joomla 1.0, please see forum: http://forum.joomla.org/viewtopic.php?f=11&t=254709.
And for Joomla 1.5 see the forum: Building Extension's Language Pack for J1.5
Guidelines for developers to facilitate translation: Language Guidelines for 3rd Party Extensions