Page Translation Quickstart Guide

From Joomla! Documentation

Other languages:
беларуская • ‎Deutsch • ‎English • ‎español • ‎eesti • ‎فارسی • ‎français • ‎Bahasa Indonesia • ‎日本語 • ‎Nederlands • ‎português • ‎português do Brasil • ‎русский • ‎українська • ‎中文（台灣）‎

This page should help get a translator quickly started with documentation translations. For the more detailed version of page translation, see Page Translation Explained. To signup as a translator, please go to Documentation Translators add your username.

When your userid is approved you can find documents to translate for your language at Language Statistics. When you open a document for translation in a new window, you will see a list of pieces to translate. At the top there is a link to the document you are translating. Open this in a new window and you have everything together. You can translate at one screen, and check what you did translate at the other.

If you are already a signed up as a translator, you can play in the Translation Sandbox.

It is good to know how parts of the documents are marked for translation. In general it is this way <translate><T:number>Text to translate</translate> and when you translate you will see Text to translate, which you can translate. The <translate></translate> is put by the person who marks the document for translation, the <T:number> is done by the system.

The Interface

If a page is ready to translate you will see (images below) or a variation (based on view of page):

Localised view of link in English

Localised view of link in Dutch

After you click the translation link, you will then see the following interface for translation. Documentation now has a ULS (Universal Language Selector) installed which will automatically set the user interface to their localised language. This is based on the browser (its language setting) and/or geographic location. The language setting may also be overridden manually by selecting the user icon (top right) and from the dropdown click on the language at the very top. You may also go to your user personal preferences for language.

JDOC-translator interface-first-view-en.png

Now you are ready to translate, click any link in the separated message units.

JDOC-translator interface-editing-view-en.png

You may click the suggested text to add it automatically to the edit window. Then you may edit the text. The suggested text is provided by translation services for free. There is no guarantee there will be suggested text. The suggestion query may time out at the translation services server.

When you are satisfied with your translation, save it. You can also skip sections if you only want to translate some of the message groups.

Page Titles

Page titles can and should be translated. They are the first message group at the top of the editing interface.

Stop hand nuvola.svg.png

Do not translate the namespace! This is anything in a title proceeding and including the : (colon).

A page name is in a namespace when it looks like this: "Prefix:Name of page".

This page name is not in a namespace when it looks like this: "Name of page".

Correct? Title Examples
Yes!!! "J2.5:Title of a Page" translated "Título de la página"

"J2.5:Title of a Page" translated "Titel einer Seite"

NO! "J2.5:Title of a Page" translated "J2.5:Título de la página"

"J2.5:Title of a Page" translated "J2.5:Titel einer Seite"


Stop hand nuvola.svg.png
Important Information about links

Please review this carefully, linking between pages will affect browsing in any language different than the source language. The objective is to provide links localised in the browsing user's language, linking to the browsing user's language view of a translated page.

The information below is a quick overview. For a more detailed explanation, see Translating Links.

Standard Internal Page Links

Hyperlinks to another page are easy in the source language, they are page names between [[ (brackets) ]] or the variations as listed below. Good source page standards for page links will start to include the proper link markup for translated navigation.

  1. [[JDOC:Translation Sandbox]] becomes JDOC:Translation Sandbox
  2. [[JDOC:Translation Sandbox|Translation Sandbox]] becomes Translation Sandbox
  3. [[JDOC:Translation Sandbox|Translator Sandbox]] becomes Translator Sandbox

Links from a translated page to a page in the same language must be run through a localisation link processor.

  1. [[Special:MyLanguage/JDOC:Translation Sandbox]] becomes Special:MyLanguage/JDOC:Translation Sandbox
    This above really isn't a nice looking link, nor is it shown in the reader's language. To improve the user experience, see the Dutch translation example link below.
  2. [[Special:MyLanguage/JDOC:Translation Sandbox|Vertaling Sandbox]] becomes Vertaling Sandbox
    Now a Dutch reader will see the link in their language. Just the same as above, you can name the link anything.

There is an alias to the word Special:, so you may also use just the letter S: as a short version of Special:.

Important Link Tips

  • Always use
    [[Special:MyLanguage/<source language pagename>|<the translation>]]
  • Or
    [[S:MyLanguage/<source language pagename>|<the translation>]]

An example would be:

[[JDOC:Translation Sandbox|Translation Sandbox]] 
  is translated as
[[Special:MyLanguage/JDOC:Translation Sandbox|Vertaling Sandbox]]
[[S:MyLanguage/JDOC:Translation Sandbox|Vertaling Sandbox]]

So Remember: Always add Special:MyLanguage/ in front of the the <source page name>. The <source page name> is always untranslated. Always add a | if it is missing and then the translation of <source page name>. Often this Special:MyLanguage/ is already added in the source document. So when Special:MyLanguage/JDOC:Translation Sandbox|<translate>Translation Sandbox</translate> is in the original document you only have to translate Translation Sandbox and you don't see the total link.

External Links

External links are easy to translate. They are written like this in the source language.

  1. http://www.php.net becomes http://www.php.net
  2. [http://www.php.net for php information] becomes for php information

What to translate?

  1. This is a standard URL and will not require translating. http://www.php.net It is a regular hyperlink and must be written as such. No translation required.
  2. This [http://www.php.net for php information] will only require the translation of for php information.


Stop hand nuvola.svg.png
Categories Require a Specific Method!

One thing to be aware of is that when translating a page, any 'category' links in the page should be modified to also include the appropriate language code.

The translation of a category is very easy, just add /<language code> to the end of the category name.

Do This

For example, if you translate a page from English to Spanish (language code es) and the page contains the following category:


You need to add /es to the end of the category name.


Category pages can be translated as well (which should be quick - most are blank except for containing a parent category) and will be part of a special categorisation project when ready.

To be prepared for this we can add /nl|Ontwikkeling (Dutch language) at the end of the category name


Do Not Do This

There are a few things you should not do.

Please do not do this

Translate the word 'Category' or the name of the category.

[[Category:Development]] to [[Categorie:Ontwikkeling]]

Or this

Translate just the name of the category.

[[Category:Development]] to [[Category:Ontwikkeling]]


It is expected translated page will want to show images localised in the language of the page. This is encouraged because it improves the user's experience. Documentation only asks translators to follow a naming pattern of images consistent with the source language of a page.

Image Naming

Using an image used above on this page which is written as:


Do This

Keep the name of the image and just add the language code to the end:

español would be es [[File:JDOC-translator_interface-editing-view-es.png]]
italiano would be it [[File:JDOC-translator_interface-editing-view-it.png]]
português would be pt [[File:JDOC-translator_interface-editing-view-pt.png]]

If the file is not a localised file type (e.g Screenshot of an interface) and is a graphic of something universal (e.g. a ball or arrow), you should not have to rename the image. If the image has a caption, you may have to translate the caption.

[[File:ball.png|caption=This is a ball]]
Will become
[[File:ball.png|caption=<translate this part only>]]

After you finish translating a page with images you will localise. You should view the page in the language you just translated it too and click on the "red" file links. This will allow you to upload the localised version of the file.

Often the image in the document to translate has already a language ID which is marked for translation: [[File:JDOC-translator_interface-editing-view-<translate>en</translate>.png]]. So you will have to translate en into your local language ID (in Dutch nl). If the image has no localised items you want to translate you can translate en into en to keep the original image.

Do Not Do This

If you don't insert your local image (because you don't have time at the moment) it's better not to translate en into your language, else you will have a "red" file link.


Chunks are pieces of documentation which can be used at more then one place. There are big chunks, but most of them are small peaces of documentation, sometimes only one line. For example, it is used for the colomnheaders in the helpscreens where the same fields are used in many helpscreens

Usage of Chunks

Using a chunk in a document is very easy. If we see: https://docs.joomla.org/Chunk30:Help_screen_column_header_Show_Title we can use it in a document with the following code:

{{Chunk30:colheader|Show Title/<translate>en</translate>}}

If we use this in a document we see the following:

  • Show Title. (Use Global/Hide/Show). Whether or not to show the Article's Title.

So you will have to translate en into your local language ID (in Dutch nl). If, after translation, the chunk is not available in your language, you will see a red link. Use the link and open it in a new window. You will see a message that the document does not exist. What you must do now is: Remove the language code in the URL, in Dutch /nl, Now you will see the chunk in English. Translate the chunk into your language (only the first line is enough) and the chunk is created in your language and visible in the source document. There is a more sophisticated way of usage of chunks, with parameters. This way you can pass parameters to the chunk in your own language. We do this with the following code:

{{Chunk30:Help_screen_toolbar_icon_Save/<translate>en</translate>|<translate>menu item</translate>}}

The source of this chunk is:

*'''Save:''' Saves the {{{1|item}}} and stays in the current screen.

When we use this in a document the result will be:


This way the translation of en will bring us in the language we want and the translation of menu item will used in the item.


Templates are reusable pieces of code which have a predictable result.

{{tip|title=This is a tip|This is the body content of a tip!}}

Would look like this:

This is a tip

This is the body content of a tip!

Do This

For the above example:


You would have to do the following:

{{tip|title=<translate the title>|<translate the body content>}}

Do Not Do This

Here is a list of don't do's.

  • Never translate the template's name. The template {{tip}} is called by the word 'tip' following the double set of curly brackets. If you translate the word tip, the translation would call a non-existent template name.
  • Never translate the variables used in a template, only the value assigned to the variable. In the example of the {{tip}} template, the word 'title' is the variable.