|
|
(18 intermediate revisions by 2 users not shown) |
Line 1: |
Line 1: |
| {{BSExtensionInfobox | | {{BSExtensionInfo |
| |desc=Copies new or existing wiki pages into a different wiki. (v3.2 and up) | | |desc=Copies new or existing wiki pages into a different wiki. (v3.2 and up) |
| |status=stable | | |status=stable |
| |developer=HalloWelt | | |developer=HalloWelt |
| |type=BlueSpice | | |type=BlueSpice |
| |edition=BlueSpice Farm (deactivated) | | |edition=BlueSpice farm |
| |compatible=BlueSpice | | |compatible=BlueSpice |
| |category=Quality Assurance | | |category=Administration |
| |license=GPL v3 | | |license=GPL v3 |
| |active=No | | |features=Users can copy up to 200 pages per transfer from a wiki to the same namespace of a target wiki. |
| }}
| | |
| 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. | | Pages that already exist in the target wiki can be manually merged by activating the extension [[:de:Referenz:MergeArticles{{!}}MergeArticles]]. |
|
| |
|
| Depending on the settings selected on the ContentTransfer special page, the following files are copied: | | Depending on the settings selected on the ContentTransfer special page, the following files are copied: |
|
| |
|
| *the selected wiki pages | | * the selected wiki pages |
| *the related category pages | | * the related category pages |
| *the book page associated with wiki pages | | * the book page associated with wiki pages |
| *the templates associated with wiki pages | | * the templates associated with wiki pages |
| *attached files | | * attached files |
| | |
| ==Technical information==
| |
| {{Box Note|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):
| |
| | |
| | |
| wfLoadExtension ('ContentTransfer');}}
| |
| | |
| ===<span class="mw-headline" id="Konfiguration" style="box-sizing: inherit;">Configuration</span>===
| |
| 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 <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);">/opt/mediawiki/w/_sf_instances/</code> .
| |
| | |
| '''<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>'''
| | ==Configuration== |
| | In on premise installations, the functionality is already activated. |
|
| |
|
| Name of the target wiki. This is the directory name from <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);">/opt/mediawiki/w/_sf_instances/</code> <span>. It can be extracted from the url of the wiki instance.</span>
| | === Additional settings === |
| | |
| '''<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
| |
| | |
| '''<<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|alt=Bot user settings|thumb|Bot user settings]]
| |
| 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>.
| |
| | |
| The bot user has to be generated from <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);">Special:BotPasswords</code> 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
| |
| | |
| '''<<span class="mw-lingo-term" data-lingo-term-id="fabcaa97871555b68aa095335975e613" data-hasqtip="3" style="box-sizing: inherit; border-bottom: 1px dotted rgb(187, 187, 255); cursor: default;">bot</span>-password-provided>'''
| |
| | |
| The password is created in the wiki and needs to be used in the settings below.
| |
| | |
| With all this info, open <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);">/opt/mediawiki/w/_sf_instances/<source-instance-name>/LocalSettings.custom.php</code> .
| |
| | |
| Add the following info:
| |
| <span class="nv" style="box-sizing: inherit;">$wgContentTransferTargets</span><span class="p" style="box-sizing: inherit;">[</span><span class="s1" style="box-sizing: inherit;">'<target-instance-descriptive-name>'</span><span class="p" style="box-sizing: inherit;">]</span> <span class="o" style="box-sizing: inherit;">=</span> <span class="p" style="box-sizing: inherit;">[</span>
| |
| <span class="s2" style="box-sizing: inherit;">"url"</span> <span class="o" style="box-sizing: inherit;">=></span> <span class="s2" style="box-sizing: inherit;">"<span class="mw-lingo-term" data-lingo-term-id="5e056c500a1c4b6a7110b50d807bade5" data-hasqtip="4" style="box-sizing: inherit; border-bottom: 1px dotted rgb(187, 187, 255); cursor: default;">https</span>://<servername>/<target-instance-name>/api.php"</span><span class="p" style="box-sizing: inherit;">,</span>
| |
| <span class="s2" style="box-sizing: inherit;">"user"</span> <span class="o" style="box-sizing: inherit;">=></span> <span class="s2" style="box-sizing: inherit;">"<<span class="mw-lingo-term" data-lingo-term-id="fabcaa97871555b68aa095335975e613" data-hasqtip="5" style="box-sizing: inherit; border-bottom: 1px dotted rgb(187, 187, 255); cursor: default;">bot</span>-username-provided>"</span><span class="p" style="box-sizing: inherit;">,</span>
| |
| <span class="s2" style="box-sizing: inherit;">"password"</span> <span class="o" style="box-sizing: inherit;">=></span> <span class="s2" style="box-sizing: inherit;">"<<span class="mw-lingo-term" data-lingo-term-id="fabcaa97871555b68aa095335975e613" data-hasqtip="6" style="box-sizing: inherit; border-bottom: 1px dotted rgb(187, 187, 255); cursor: default;">bot</span>-password-provided>"</span><span class="p" style="box-sizing: inherit;">,</span>
| |
| <span class="s2" style="box-sizing: inherit;">"draftNamespace"</span> <span class="o" style="box-sizing: inherit;">=></span> <span class="s2" style="box-sizing: inherit;">"Draft"</span><span class="p" style="box-sizing: inherit;">,</span>
| |
| <span class="s2" style="box-sizing: inherit;">"pushToDraft"</span> <span class="o" style="box-sizing: inherit;">=></span> <span class="k" style="box-sizing: inherit;">true</span><span class="p" style="box-sizing: inherit;">,</span>
| |
| <span class="s2" style="box-sizing: inherit;">"displayText"</span> <span class="o" style="box-sizing: inherit;">=></span> <span class="s2" style="box-sizing: inherit;">"<target-instance-label>"</span><span class="p" style="box-sizing: inherit;">,</span>
| |
| <span class="p" style="box-sizing: inherit;">];</span>
| |
| If ContentTransfer is used without the extension [[:de:Referenz:MergeArticles|MergeArticles]], the information about drafts has to be deactivated in the settings block:
| |
| # "draftNamespace" => "Draft",
| |
| "pushToDraft" => false,
| |
| Example:
| |
| $wgContentTransferTargets['MeinWiki'] = [
| |
| "url" => "<nowiki>http://172.16.200.23/MeinWikiName/api.php</nowiki>",
| |
| "user" => "Snow@Schneewittchen",
| |
| "password" => "uuicqdv9mubfrepbpqu1bvsl5957cpa9",
| |
| # "draftNamespace" => "Draft",
| |
| "pushToDraft" => false,
| |
| "displayText" => "Mein Wiki",
| |
| ];
| |
| {{Box Note|boxtype=note|Note text=To conclude the confguration, you need to run update.php}}
| |
| | |
| === Additional settings: === | |
| <span class="nv" style="box-sizing: inherit;">$wgContentTransferIgnoreInsecureSSL</span> <span class="o" style="box-sizing: inherit;">=</span> <span class="k" style="box-sizing: inherit;">false</span><span class="p" style="box-sizing: inherit;">;</span> <span class="c1" style="box-sizing: inherit;">// Ignore invalid SSL certificates (for test systems)</span> | | <span class="nv" style="box-sizing: inherit;">$wgContentTransferIgnoreInsecureSSL</span> <span class="o" style="box-sizing: inherit;">=</span> <span class="k" style="box-sizing: inherit;">false</span><span class="p" style="box-sizing: inherit;">;</span> <span class="c1" style="box-sizing: inherit;">// Ignore invalid SSL certificates (for test systems)</span> |
| <span class="nv" style="box-sizing: inherit;">$wgContentTransferPageLimit</span> <span class="o" style="box-sizing: inherit;">=</span> <span class="mi" style="box-sizing: inherit;">200</span><span class="p" style="box-sizing: inherit;">;</span> <span class="c1" style="box-sizing: inherit;">// Max number of pages to be allowed at one</span> | | <span class="nv" style="box-sizing: inherit;">$wgContentTransferPageLimit</span> <span class="o" style="box-sizing: inherit;">=</span> <span class="mi" style="box-sizing: inherit;">200</span><span class="p" style="box-sizing: inherit;">;</span> <span class="c1" style="box-sizing: inherit;">// Max number of pages to be allowed at one</span> |
Line 97: |
Line 29: |
| <span class="nv" style="box-sizing: inherit;">$wgContentTransferAllowTalkNamespaces</span> <span class="o" style="box-sizing: inherit;">=</span> <span class="k" style="box-sizing: inherit;">false</span><span class="p" style="box-sizing: inherit;">;</span> <span class="c1" style="box-sizing: inherit;">// Allow talk namespaces to be selected in filters</span> | | <span class="nv" style="box-sizing: inherit;">$wgContentTransferAllowTalkNamespaces</span> <span class="o" style="box-sizing: inherit;">=</span> <span class="k" style="box-sizing: inherit;">false</span><span class="p" style="box-sizing: inherit;">;</span> <span class="c1" style="box-sizing: inherit;">// Allow talk namespaces to be selected in filters</span> |
|
| |
|
| ===<span class="mw-headline" id="Anforderungen" style="box-sizing: inherit;">Anforderungen</span>=== | | ===Certificates=== |
| ContentTransfer requires [[:de:Referenz:BlueSpiceFoundation|BlueSpiceFoundation]]. Pages that already exist in the target wiki, can be merged using the extension [[:de:Referenz:MergeArticles|MergeArticles]].
| | If self-signed certificates are being used (and if no outbound connections are allowed) one must set |
| [[Category:Extension]]
| | <syntaxhighlight lang="text"> |
| | $GLOBALS['wgWikiFarmConfig_internalServer'] = 'http://wiki-web:9090'; |
| | </syntaxhighlight> |
| | in <code>data/bluespice/pre-init-settings.php</code>. |
| | }} |
all extensions
Description:
|
Enables pushing content from one wiki to another
|
State:
|
stable
|
Dependency:
|
BlueSpice
|
Developer:
|
HalloWelt
|
License:
|
GPL-3.0-only
|
Type:
|
BlueSpice
|
Category:
|
Administration
|
Edition:
|
BlueSpice farm
|
Version:
|
|
Features
Users can copy up to 200 pages per transfer from a wiki to the same namespace of a target wiki.
Pages that already exist in the target wiki can be manually merged by activating the extension MergeArticles.
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
In on premise installations, the functionality is already activated.
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
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
.
Technical Information
Technical details for BlueSpice cloud can differ in some cases.
Permissions
Name |
Description |
Role
|
content-transfer |
Transfer content to other wikis |
admin
|
Configuration
Name |
Value
|
ContentTransferAllowTalkNamespaces |
false
|
ContentTransferEnableBetaFeatures |
false
|
ContentTransferIgnoreInsecureSSL |
false
|
ContentTransferOnlyContentNamespaces |
false
|
ContentTransferPageLimit |
200
|
ContentTransferTargets |
array (
)
|
API Modules
- content-transfer-do-push-single
- content-transfer-get-pages
- content-transfer-purge-pages
- content-transfer-push-info
Hooks