Help:Extension:Translate/Page translation example

Welcome! After completing this tutorial you will know how to create and manage translatable pages using the 1>Special:MyLanguage/Help:Extension:Translate|Translate extension. We aim to keep this tutorial as short as possible, while introducing all the basic concepts and tasks. After completing this tutorial you can use the 1>Special:MyLanguage/Help:Extension:Translate/Page translation administration|in-depth documentation about page translation feature.

Step 1: Before starting
This tutorial assumes that the Translate extension is already installed and configured. Maybe you already have a page in mind that needs translation, or you can use the example page provided below to try out the steps in this tutorial in your own wiki.

This is a page describing the imaginary municipality of Fréttinga.

Fréttinga is a small municipality in MungoLand, located on the BaMungo island. It hosts a population of about 400 people. It has some agriculture and fishing. Tourists like to visit it in the summertime. == Services == It doesn't have many services. There is a shop, and a car ferry visits the island from the mainland once a day.


 * 1. Go to the page Fréttinga in your wiki (or a draft page) and click create.
 * 2. Paste the above content and save it.

Step 2: Preparation
Now we have a page with some text. If the page is still going to be subject to lots of changes, it may be better to wait until the edits slow down to a normal level before adding the page into the translation system. This is to avoid too much work for translators as they need to keep up with all the changes.


 * 3. Edit Fréttinga
 * 4. Wrap the whole content inside  tags as shown below
 * 5. Save the page

 Fréttinga is a small municipality in MungoLand, located on the BaMungo island. It hosts a population of about 400 people. It has some agriculture and fishing. Tourists like to visit it in the summertime. == Services == It doesn't have many services. There is a shop, and a car ferry visits the island from the mainland once a day. 

You don't need to add  tags to all elements, or add markers like ; the extension does it for you.

Step 3: Enabling translations
After saving the page, you will see a link at the top of the page saying "Mark this page for translation" - or "This page contains changes which are not marked for translation." if you are not a translation administrator. If you are a translation administrator, then click on the "Mark this page for translation" link. The page has been automatically split into four translation units. The first unit is the title of the page, the second is the first paragraph, the third is the header of the second paragraph, and the fourth is the text of the second paragraph. These are the basics items of translatable pages: each unit is independent; it can and must be translated as a whole; changes to the page content are tracked into the unit level. Units can be rearranged or deleted.

There is also a view of the page translation page template; this will be covered in later steps. You can give names to the translation units, but in this example, we choose to stick with the defaults.


 * 6. Click the "Mark this page for translation" link
 * 7. Ensure that the page body is split into three units correctly
 * 8. Click the "Mark this version for translation" button
 * 9. Return to the page

Now you will see a new link at the top, "Translate this page", that lets translators translate the page. You might have a look at the translation tutorial which uses this page as an example and try out few translations now. Then return here for the next step.

Step 4: Making changes
Tracking changes is a very important feature, so let's make some changes and see how it works. When you open the page for editing you will see that it has been modified with markers like . These are added by the extension and help it identify which unit is which. This allows you to rearrange and edit those units. When editing the page, the markers should be left alone and their position in relation to the unit they belong to should not be changed. When moving a unit, move the unit marker, too.

When deleting a unit, delete the marker too. When adding new paragraphs, new markers will be added by the software. Do not try to do this manually, it may confuse the software. Markers you have deleted will also be automatically deleted by the bot in the existing translations.

If you do minor changes to an existing translation unit (adding a few words or a link to a paragraph), keep the marker. If you change a whole paragraph (delete and rebuilt it), delete the marker. This way, translators will have different tasks, between reviewing a fuzzy translation or create a new translation.


 * 10. Make some additions as highlighted above
 * 11. Click the "marked for translation" link at the top
 * 12. Observe the changes
 * 13. Click the "Mark for translation" button
 * 14. Return to the original page

If you made translations as suggested in the previous step, you can now see those translations linked at the top of the page. You will also see that the translation is not 100 % up to date. If you go to the translation view, you see that the unit is marked as in need of updating.

Outdated translations will be highlighted by a pink background; the user is told that translation is incomplete.

The translation template view helps you to see what parts of the page are constant in all language versions (the "translation page template", i.e. the parts outside translate tags) and also shows you if units have been moved around or deleted.

There might be a slight delay before all translated versions are updated, because there can be many pages to update.

You now know the basics, but this tutorial will continue with more things that you are likely to encounter.

Step 5: Adding other wiki elements


You have a basic translatable page now, but it is very dull. Let's add an image and some other stuff to make it look more like a normal wiki page and see how those elements interact with translation.

We also removed a paragraph, including its unit marker, and replaced it with a list, so you can see what happens.


 * 15. Add an image, a category and a list to the page as shown below
 * 16. Save the page
 * 17. Click the link "marked for translation" at the top of the page
 * 18. Verify that the changes look as intended
 * 19. Click the "Mark this version for translation" button
 * 20. Return to the translatable page

Document a translation
Here you can see that we left most of the image markup outside of a translation unit and have it in the translation page template instead. This is usually okay, but sometimes translators may want to change the image, especially if it contains linguistic content (text). In those cases it's usually easiest to include the whole markup in a unit (as we did for the category). When the translation of a unit involves or interacts with markup it's a good idea to write a small tip to the translators about it. You can do this with the following steps.


 * 21. Click "Translate this page" link at the top
 * 22. Select "qqq - Page documentation" language
 * 23. Click the message name which contains the message "A typical view of Fréttinga"
 * 24. Write "Description of an image" and click "Save"

About categories
In this example, the whole category assignment is a translation unit. This lets translators change it to or whatever naming convention you want to use for categories. If it were outside the translation template, you would have all the pages Foo, Foo/de, Foo/ru, Foo/ta and so on in the same category. Sometimes this is okay, but usually it distracts the users. Make sure your translators know what the local convention is.

About links
Similarly, for links there are many ways to do it. We used " Special:MyLanguage/Seagull ", which automatically redirects to the translated version of the page depending on the users' interface language (if that translation exists). This isn't an ultimate solution, because users will always be redirected to the interface language they are using, not to the language they are currently reading. Special:MyLanguage also interferes with Special:WhatLinksHere and makes it not work. The good thing about Special:MyLanguage is that you always get some version of the page, even if the requested translation doesn't exist.

About titles
To have titles considered as separated elements than text, don't forget to add a blank line (if there isn't one already) between the title and the paragraph following it.

The following example will only create one translation unit:

== Services == It doesn't have many services. There is a shop, and a car ferry visits the island from the mainland once a day.

The next one will create two translation units, including one for the title.

== Services == It doesn't have many services. There is a shop, and a car ferry visits the island from the mainland once a day.

Adding a blank line allows translators to know when they can take a break. Plus it prevents issues with wikitext.

Last words
It is also possible to move translatable pages including all their translations to a new name. Because many pages may need to be moved, this operation is not instant. You can delete either the whole page including all translations, or just one translated version of a page. You can access these functions from the same place they are on all other pages.

Special:PageTranslation lists all the pages in the system. Besides giving you an overview of all translatable pages, it is also possible to discourage pages from translation. This hides the page from most lists. It does not prevent further translations.

You have now created a translatable page and tried all of the common actions that can be performed on translatable pages. For more information, or if you want to understand the feature more deeply, please continue reading on 1>Special:MyLanguage/Help:Extension:Translate/Page translation administration|the in-depth documentation of page translation feature. It also contains discussion about different ways of handling links, categories and templates, or pros and cons of using larger or smaller translation units.