Help:Extension:Translate/Move translatable page

Other languages:
Recommended prior reading: Help:Moving a page

When moving a source page that has been translated to other languages using the Translate extension, along with the source page the translation pages also have to be moved. Translation pages exist as subpages of the source page. For example, if we have a source page with the name FooBar, and the page has been translated to French, and Spanish, then the translation pages will exist at FooBar/fr and FooBar/es

The process to move a translated source page is the same as a normal page. The difference is in the way the subpages are moved.

Translate-move-page.png

In the image, we are moving a translatable source page. There are a few sections to note here,

  1. Translation page - These are the languages to which the source page has been translated to. This will be moved.
  2. Translation unit pages - These are the smallest individually tracked component of translatable pages: the page is divided into paragraph-sized translation units and each unit is a message. All of these will also be moved.
  3. Subpage marked for translation - These are other translatable source pages that exist as subpages under the source page that is being moved. These cannot be moved as part of the current move operation but has to be moved separately.
  4. Other subpage - These are normal subpages under the source translatable page that is being moved. The user can choose to move this by selecting the Move all subpages option on the screen.

Talk pages if present are also moved. Pages that have talk pages are denoted with a (Has talk page) suffix. Similar to subpages marked for translation, translatable talk pages have to be moved separately.

Once the user initiates the move process, the actual moving will be done via background jobs. The status of the "move job" can be tracked via the Page translation log.

From the user interface, by default, a maximum of 500 pages can be moved. This can be changed by modifying the config $wgTranslatePageMoveLimit. We recommend using the moveTranslatablePage.php to move a large number of pages.

Moving a large number of pagesEdit

To move a large number of pages, we recommend using the script moveTranslatablePage.php as it can be slightly unreliable to do so via the UI that uses the JobQueue to move the pages.

While moving the page, the script will perform the necessary validations, display what will be moved, and then take confirmation from the user before performing the move.

The script takes the following parameter:

  • current-page - Current page name
  • new-page - New page name
  • user - User performing the move
  • reason - (optional) Reason for performing the move
  • skip-subpages - (optional) Skip moving subpages under the current page
  • skip-talkpages - (optional) Skip moving talkpages under the current page

Example usage:

# Here "Main Page 60" is being renamed to "Main Page 70" by "Admin
php extensions/Translate/scripts/moveTranslatablePage.php "Main Page 60" "Main Page 70" Admin --reason "Just an example"

ReferencesEdit