Last edited one week ago
by Redaktion

ContentTransfer

Revision as of 07:41, 23 April 2025 by Redaktion (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Extension: ContentTransfer

all extensions


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: Administration
Edition: BlueSpice farm Version: 4.1+

Features

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

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",
];

{{Messagebox|boxtype=note|Note text=To conclude the confguration, you need to run update.php}}

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

Requirements

ContentTransfer requires BlueSpiceFoundation. Pages that already exist in the target wiki, can be merged using the extension MergeArticles.

Certificates

If self-signed certificates are being used (and if no outbound connections are allowed) one must set

$GLOBALS['wgWikiFarmConfig_internalServer'] = 'http://wiki-web:9090';

in data/bluespice/pre-init-settings.php.

Permissions

To transfer pages from a source to other target wikis, users need the permission content-transfer. By default, it is contained in the admin role.



Accessibility

Test status: 2-testing complete
Checked for: Authoring tool
Last test date: 2022-08-10
WCAG level: AA
WCAG support: partially supports (workaround: No)
Comments:

Small keyboard issue: Transfer button is difficult to focus. Could use shortcut like VE Save button (Shift+alt+S)

Screenreader accessibility: multiple issues

erm:29524

Extension type: extended
Extension focus: organizer



To submit feedback about this documentation, visit our community forum.