m (1 revision imported) |
No edit summary Tag: 2017 source edit |
||
Line 21: | Line 21: | ||
==Technical information== | ==Technical information== | ||
{{ | {{Messagebox|boxtype=important|Note text=The extension is deactivated by default and must first be activated in 060-ContentTransfer under settings.d - or in the LocalSettings.custom.php in the installation folder (not just in a single farm instance): | ||
Line 50: | Line 50: | ||
'''<<span class="mw-lingo-term" data-lingo-term-id="fabcaa97871555b68aa095335975e613" data-hasqtip="2" style="box-sizing: inherit; border-bottom: 1px dotted rgb(187, 187, 255); cursor: default;">bot</span>-username-provided>''' | '''<<span class="mw-lingo-term" data-lingo-term-id="fabcaa97871555b68aa095335975e613" data-hasqtip="2" style="box-sizing: inherit; border-bottom: 1px dotted rgb(187, 187, 255); cursor: default;">bot</span>-username-provided>''' | ||
[[File:Reference:contentTransfer-bot-settings.png| | [[File:Reference:contentTransfer-bot-settings.png|thumb|Bot user settings|link=Special:FilePath/Reference:contentTransfer-bot-settings.png]] | ||
A user name in the form of <code style="box-sizing: inherit; font-family: monospace, Courier; font-size: 13.5px; padding: 1px 4px; color: black; background-color: rgb(249, 249, 249); border-radius: 2px; border: 1px solid rgb(221, 221, 221);"><username>@<id></code>. | A user name in the form of <code style="box-sizing: inherit; font-family: monospace, Courier; font-size: 13.5px; padding: 1px 4px; color: black; background-color: rgb(249, 249, 249); border-radius: 2px; border: 1px solid rgb(221, 221, 221);"><username>@<id></code>. | ||
Line 89: | Line 89: | ||
"displayText" => "Mein Wiki", | "displayText" => "Mein Wiki", | ||
]; | ]; | ||
{{ | {{Messagebox|boxtype=note|Note text=To conclude the confguration, you need to run update.php}} | ||
To provide a selection of possible users who can transfer pages, the following syntax is required:<syntaxhighlight lang="text"> | |||
$wgContentTransferTargets = [ 'privatewikiname' => [ | |||
"url" => "http://target/api.php", // URL to the target wiki's API endpoint | |||
"users" => [ | |||
[ | |||
"user" => "Uname1@bot", // Bot username | |||
"password" => "dvauaeersp02ds6s8n88bbrsj3asuuk", // Bot password | |||
], | |||
[ | |||
"user" => "Uname2@bot", // Bot username | |||
"password" => "dvauaeersp02ds6s8n88bbrsj3asuuk", // Bot password | |||
] | |||
], | |||
"draftNamespace" => "Draft", // Name for the NS to be used as draft ("Draft" is automatically created by "MergeArticles" ext) | |||
"pushToDraft" => true // Whether to push to draft. If false will push directly to target pages | |||
] ]; | |||
</syntaxhighlight>The result is a selection of user accounts for executing the transfer: | |||
[[File:Reference:contenttransfer-multipleusers.png|alt=Multiple transfer users|center|thumb|350x350px|Multiple transfer users]] | |||
=== Additional settings: === | === Additional settings: === |
Revision as of 14:28, 19 January 2022
Extension: ContentTransfer
Overview | |||
---|---|---|---|
Description: | Copies new or existing wiki pages into a different wiki. (v3.2 and up) | ||
State: | stable | Dependency: | BlueSpice |
Developer: | HalloWelt | License: | GPL v3 |
Type: | BlueSpice | Category: | Quality Assurance |
Edition: | BlueSpice Farm (deactivated) | Version: | 4.1+ |
Users with the appropriate authorization can copy up to 200 pages per transfer from a wiki to the same namespace of a target wiki. This extension usually requires BlueSpice Farm.
Depending on the settings selected on the ContentTransfer special page, the following files are copied:
- the selected wiki pages
- the related category pages
- the book page associated with wiki pages
- the templates associated with wiki pages
- attached files
Technical information
Configuration
The following information is necessary to transfer content between two wiki instances:
<source-instance-name>
Name of the source wiki. This is the directory name from /opt/mediawiki/w/_sf_instances/
.
<target-instance-descriptive-name>
Descriptive name of the target wiki. This is usually the same as <target-instance-name>, but can be chosen freely to better describe the instance. Does not allow spaces.
<target-instance-name>
Name of the target wiki. This is the directory name from /opt/mediawiki/w/_sf_instances/
. It can be extracted from the url of the wiki instance.
<target-instance-label>
The display name for the target wiki. It can contain empty spaces. This information is optional and can be commented out.
<servername>
Server-url
<bot-username-provided>
A user name in the form of <username>@<id>
.
The bot user has to be generated from Special:BotPasswords
in the target wiki. After you click "Create", a page for selecting the bot rights is shown. Activate the following settings:
- High-volume editing
- Edit existing pages
- Edit protected pages
- Create, edit and move pages,
- Upload new files
- Upload, replace and move files
<bot-password-provided>
The password is created in the wiki and needs to be used in the settings below.
With all this info, open /opt/mediawiki/w/_sf_instances/<source-instance-name>/LocalSettings.custom.php
.
Add the following info:
$wgContentTransferTargets['<target-instance-descriptive-name>'] = [ "url" => "https://<servername>/<target-instance-name>/api.php", "user" => "<bot-username-provided>", "password" => "<bot-password-provided>", "draftNamespace" => "Draft", "pushToDraft" => true, "displayText" => "<target-instance-label>", ];
If ContentTransfer is used without the extension MergeArticles, the information about drafts has to be deactivated in the settings block:
# "draftNamespace" => "Draft", "pushToDraft" => false,
Example:
$wgContentTransferTargets['MeinWiki'] = [ "url" => "http://172.16.200.23/MeinWikiName/api.php", "user" => "Snow@Schneewittchen", "password" => "uuicqdv9mubfrepbpqu1bvsl5957cpa9", # "draftNamespace" => "Draft", "pushToDraft" => false, "displayText" => "Mein Wiki", ];
To provide a selection of possible users who can transfer pages, the following syntax is required:
$wgContentTransferTargets = [ 'privatewikiname' => [
"url" => "http://target/api.php", // URL to the target wiki's API endpoint
"users" => [
[
"user" => "Uname1@bot", // Bot username
"password" => "dvauaeersp02ds6s8n88bbrsj3asuuk", // Bot password
],
[
"user" => "Uname2@bot", // Bot username
"password" => "dvauaeersp02ds6s8n88bbrsj3asuuk", // Bot password
]
],
"draftNamespace" => "Draft", // Name for the NS to be used as draft ("Draft" is automatically created by "MergeArticles" ext)
"pushToDraft" => true // Whether to push to draft. If false will push directly to target pages
] ];
The result is a selection of user accounts for executing the transfer:
Additional settings:
$wgContentTransferIgnoreInsecureSSL = false; // Ignore invalid SSL certificates (for test systems) $wgContentTransferPageLimit = 200; // Max number of pages to be allowed at one $wgContentTransferOnlyContentNamespaces = true; // Only allow content namespaces to be selected in filters $wgContentTransferAllowTalkNamespaces = false; // Allow talk namespaces to be selected in filters
Anforderungen
ContentTransfer requires BlueSpiceFoundation. Pages that already exist in the target wiki, can be merged using the extension MergeArticles.