Some translatable pages consists of thousands of separate pages. Moving these on the job queue is not reliable. We should have a reliable backup method to perform these large renames. A command line script would accomplish this.
This may need some refactoring to re-use validation from the special page.
= Script details
== Name
`moveTranslatablePage.php`
== Input
1. Target page (target)
2. Replacement name (replacement)
3. Reason (`--reason` - Optional)
4. Move sub pages (`--move-sub-pages` - Optional)
5. Really - To do the actual moving (`--really` - Optional)
== Output
=== If `really` is passed
Sample output:
```
Moving "ABC" to "XYZ" including sub pages, total 33 pages to move.
Rphp moveTranslatablePage.php "Main Page TPT 123" "Main Page TPT" --reason: "This is a test" --move-sub-pages
Triggered a background job to perform the moveChecking if "Main Page TPT 123" can be moved to "Main Page TPT" including sub pages
Please check http://127.0.0.1:8080/wiki/Special:Log/pagetranslation for updatesReason: This is a test
```Pages that will be moved:
=== If `really` is NOT passed<< Output similar to image below >>
Type "MOVE" to perform begin the move operation: MOVE
An output similar to the `SpecialPageTranslationMovePage` will be shown:Moving,
{F34167871}
== Example runs * Main Page TPT 123 → Main Page TPT
``` * Main Page TPT 123/en → Main Page TPT/en
# To check what pages will be moved * Main Page TPT 123/es → Main Page TPT/es
php moveTranslatablePage.php " * Main Page TPT 123" "/fr → Main Page TPT" --reason "This is a test" --move-sub-pages/fr
# To do the move .... failed, Reason: << REASON message here >>
php moveTranslatablePage.php "Main Page TPT 123" "Main Page TPT" --reason "This is a test" --move-sub-pages --really .....
Moved 25 pages including 3 subpages
```
{F34167871}