Extension:UploadWizard

This page is a translated version of the page Extension:UploadWizard and the translation is 96% complete.
Příručka k rozšířením MediaWiki
UploadWizard
Stav rozšíření: stabilní
Implementace Média, Speciální stránka
Popis Multisouborový průvodce načítáním, krok za krokem
Autoři Neil Kandalgaonkar, Jeroen De Dauw, Mark Holmquist, Ryan Kaldari, Ankur Anand, Yuvi Panda, Michael Dale,
Nejnovější verze continuous updates
MediaWiki >= 1.43
Změny v databázi Ano
Tabulky uw_campaigns
Licence GNU General Public License 2.0 nebo novější
Stáhnout
README
Campaign
  • $wgUploadWizardConfig
  • upwizcampaigns
  • mass-upload
Čtvrtletní stahování 161 (Ranked 36th)
Přeložte rozšíření UploadWizard, používá-li lokalizaci z translatewiki.net
Vagrant role uploadwizard
Problémy Otevřené úkoly · Nahlásit chybu

Rozšíření UploadWizard umožňuje nahrát více souborů najednou pomocí JavaScriptového rozhraní, které uživatele provede jednotlivými kroky procesu.

Vizte také popis Průvodce načítáním souborů na Wikimedia Commons

Instalace

Povolení nahrávání a náhledů

Vaše MediaWiki bude muset být schopna hostovat mediální soubory a vytvářet miniatury (menší náhledy mediálních souborů). Pokud můžete nahrát obrázky a zobrazit menší náhledy na jejich stránce File, jste již připraveni. Pokud ne, úplné pokyny najdete v Příručka:Správa obrázků , zejména miniatura obrázků.

Pro uživatele GNU/Linux nebo macOS
$wgEnableUploads = true;
$wgUseImageMagick = true;
$wgImageMagickConvertCommand = <path to your convert command>;  # Only needs to be set if different from /usr/bin/convert

wfLoadExtension( 'UploadWizard' );

Měli byste také nainstalovat rozšíření EventLogging . Toto se používá pouze v případě, že používáte funkci kampaní, a někdy v budoucnu by mělo být vytvořeno jako měkká závislost.

Pokud používáte Internet Explorer, budete také muset změnit následující základní konfigurační proměnnou. Podívejte se na stránku phab:T41877:

$wgApiFrameOptions = 'SAMEORIGIN';

Povolení nahrávání na Flickr

Můžete také použít UploadWizard k přenosu souborů přímo z Flickru. Chcete-li tuto možnost povolit, musíte nejprve získat klíč API z Flickru:

  1. Přihlaste se na Flickr;
  2. Přejděte na stránku Apps By You na Flickru App Garden;
  3. Klikněte na 'Získat další klíč';
  4. Zvolte 'Požádat o nekomerční klíč';
  5. Před odesláním zadejte název a popis a zaškrtněte dvě políčka zřeknutí se práv.

Jakmile budete mít klíč, připojte ke svému LocalSettings.php následující:

$wgAllowCopyUploads = true;
$wgGroupPermissions['user']['upload_by_url'] = true;
$wgCopyUploadsDomains = ['*.flickr.com', '*.staticflickr.com'];
$wgUploadWizardConfig['flickrApiKey'] = 'YOUR_FLICKR_KEY_HERE';

Jiná konfigurace

  • Pro přístup k licenčnímu kurzu musíte mít povoleno InstantCommons . Chcete-li aktivovat InstantCommons, přidejte
    $wgUseInstantCommons = true;
    
    do LocalSettings.php.
  • Možná budete chtít nastavit
    $wgUploadNavigationUrl = '/wiki/Special:UploadWizard';
    
    v LocalSettings.php, kde /wiki/ je správná cesta pro vaši wiki. Obecnější způsob, jak toho dosáhnout, který funguje pro jakoukoli konfiguraci cesty, kterou máte, ale vyžaduje PHP 5.3 nebo novější, je:
$wgExtensionFunctions[] = function() {
	$GLOBALS['wgUploadNavigationUrl'] = SpecialPage::getTitleFor( 'UploadWizard' )->getLocalURL();
	return true;
};

Tím se upraví odkaz "Načíst soubor" na postranním panelu – pravděpodobně i na jiných místech. Více na Příručka:$wgUploadNavigationUrl .

Prostřednictvím konfiguračního pole je k dispozici několik dalších možností. Například:

$wgUploadWizardConfig = [
	'debug' => false,
	'autoAdd' => [
	 	'wikitext' => [
			'This file was uploaded with the UploadWizard extension.'
			],
	 	'categories' => [
	 		 'Uploaded with UploadWizard'	
	 		 ],
		], // Should be localised to the language of your wiki instance
	'feedbackPage' => 'Feedback about UploadWizard',
	'altUploadForm' => 'Special:Upload',
	'feedbackLink' => false, // Disable the link for feedback (default: points to Commons)
	'alternativeUploadToolsPage' => false, // Disable the link to alternative upload tools (default: points to Commons)
	'enableFormData' => true, // Enable FileAPI uploads be used on supported browsers
	'enableMultipleFiles' => true,
	'enableMultiFileSelect' => false,
	'uwLanguages' => [
		'ar' => 'العربية',
		'de' => 'Deutsch',
		'en' => 'English'
		], // Selectable languages for file descriptions - defaults to 'en'
	'tutorial' => [
	 	'skip' => true
		], // Skip the tutorial
	'maxUploads' => 15, // Number of uploads with one form - defaults to 50
	'fileExtensions' => $wgFileExtensions // omitting this may cause errors
	];

Použití v bezlicenčních prostředích

Pokud instalujete UploadWizard v prostředí, kde se nepoužívají licence, možná budete chtít přidat níže uvedenou konfiguraci na LocalSettings.php. To omezí výběr licence na jediné výchozí nastavení, které odkazuje na obecné prohlášení wiki. Všimněte si, že existuje mnoho dalších konfiguračních nastavení, která lze přidat v závislosti na vašem případu použití.

$wgUploadWizardConfig = [
	'licensing' => [
		'ownWorkDefault' => 'own',
		'ownWork' => [
			'type' => 'or',
			'template' => 'licensing', // this adds a link to Template:Licensing to the file info page
			'licenses' => [
				'generic',
			],
		],
	],
];
Toto jsou jen ukázky nastavení. Podívejte se na soubor UploadWizard.config.php (začínající kolem řádku 80) pro mnoho dalších možností podporovaných v poli $wgUploadWizardConfig.

Úprava obecných zpráv uživatelského rozhraní

Pokud si přejete upravit obecné zprávy, můžete tak učinit přímo na wiki editací následujících stránek:

  • MediaWiki:Mwe-upwiz-source-ownwork
  • MediaWiki:Mwe-upwiz-source-ownwork-assert-generic
  • MediaWiki:Mwe-upwiz-source-ownwork-generic-explain

Úprava stránek souborů vytvořených Upload Wizard

Chcete-li upravit wikitext stránek souborů vytvořených nástrojem UploadWizard, přidejte do LocalSettings.php háček, který se spustí při každém uložení stránky, poté zkontrolujte, zda má stránka strukturu stránky vytvořené nástrojem UploadWizard, a upravte ji podle svých představ. Například:

$wgHooks['ParserPreSaveTransformComplete'][] = function ( Parser $parser, string &$text ) {
	if ( preg_match( '/=={{int:filedesc}}==
{{Information
\|description=(.*)
\|date=(.*)
\|source=(.*)
\|author=(.*)
\|permission=(.*)
\|other versions=(.*)
}}

=={{int:license-header}}==
{{(.*)}}
*(.*)/', $text, $matches ) ) {

		// Get data
		$description = $matches[1];
		$date = $matches[2];
		$source = $matches[3];
		$author = $matches[4];
		$permission = $matches[5];
		$otherVersions = $matches[6];
		$license = $matches[7];
		$licenseDetails = $matches[8];

		// Process data
		if ( $source === '{{own}}' ) {
			$source = 'Own work';
		}
		if ( preg_match( '/\[\[([^|]+)\|[^]]+\]\]/', $author, $matches ) ) {
			$author = $matches[1]; // Unlink the author
		}
		if ( $licenseDetails ) {
			$license = $licenseDetails;
		}

		// Build wikitext
		$text = "$description

{{File data
| date = $date
| author = $author
| source = $source
| license = $license
}}";
	}
};

Použití

Argumenty adresy URL

Existuje několik argumentů adresy URL, které lze zadat, aby se změnilo chování nástroje UploadWizard:

  • campaign - určuje, kterou nahrávací kampaň použít.
  • caption - Sets the initial value for the caption field (structural data). Note that by default this will be copied to the description.
  • captionlang - Sets the language of the first caption field.
  • description - nastaví počáteční hodnotu pro pole popisu. Note that setting the description will disable copying the caption to the description.
  • descriptionlang - Sets the language of the first description field.
  • lat - nastaví počáteční hodnotu pole zeměpisné šířky.
  • lon - nastaví počáteční hodnotu pole zeměpisné délky.
  • alt - nastaví počáteční hodnotu pro pole nadmořské výšky.
  • categories - nastaví počáteční hodnotu pro pole kategorií, více kategorií oddělených |.
  • fields[] - počáteční hodnoty dalších polí definovaných kampaní. Hodnoty více polí musí být předány přesně ve stejném pořadí, jak je definováno v kampani.
(například fields[]=value_first&fields[]=value_second)
  • objref - určuje odkaz na objekt, který lze použít k aktualizaci stránky miniaturou nahraného obrázku. Další podrobnosti viz #Reference objektů.
  • updateList - určuje, zda má být stránka seznamu vůbec aktualizována. Tento parametr funguje pouze v kombinaci s objref. Další podrobnosti viz #Reference objektů.

Tyto argumenty lze zadat následovně: Pokud máte argument s názvem campaign a chcete zadat hodnotu foobar, připojte k adrese URL campaign=foobar. Například wiki/Special:UploadWizard?campaign=foobar nebo w/index.php?title=Special:UploadWizard&campaign=foobar.

Následující argumenty adresy URL jsou pro existující adresy URL stále podporovány, ale jsou zastaralé:

  • id: Pokud je zadán, použije se tato hodnota místo první hodnoty fields[]. Místo toho použijte fields[].
  • id2: Pokud je zadán, použije se tato hodnota místo druhé hodnoty fields[]. Místo toho použijte fields[].


Odkazy na objekty

Upload Wizard poskytuje způsob, jak uložit "odkazy na objekty" – odkazy na šablony seznamů na stránkách Wiki – na stránce s popisem souboru. Tyto mohou být použity roboty k vložení miniatury obrázku na stránku seznamu. Robot, který to dělá pro seznamy památek německé Wikipedie, běží na nástrojové laboratoři. Jeho kód je hostován na GitHub. Ačkoli jeho účelem je aktualizovat seznamy památek na Wikipedii, může být přijat, aby sloužil v různých scénářích.

Tato funkce používá parametry objref a updateList. Pokud jsou oba parametry předány, Upload Wizard zobrazí zaškrtávací políčko pro každé nahrání, které lze použít k výběru obrázku, ke kterému je odkaz na objekt přidán. Pokud je parametr updateList vynechán, zaškrtávací políčka budou deaktivována a zobrazí se další upozornění, že obrázek pro objekt již v seznamu existuje.

  • objref - Určuje odkaz na objekt, který lze použít k aktualizaci stránky miniaturou nahraného obrázku. Předání tohoto parametru se očekává v následujícím formátu objref=prefix|page_title|object_id
    • prefix - Interwiki nebo mezijazyková předpona podle definice na Special:Interwiki. Aby to fungovalo, musí být předpona definována.
    • page_title - Název stránky, na které je objekt uveden.
    • object_id - Jedinečný identifikátor objektu, který má robot aktualizovat
  • updateList: Určuje, zda má být stránka seznamu vůbec aktualizována. Pokud je tento parametr nastaven na libovolnou hodnotu, aktivuje se zaškrtávací políčko

Testování

Pokud z jakéhokoli důvodu testujete UploadWizard a došly vám "skutečné" obrázky k nahrání jako testovací případy, můžete vždy použít šikovnou utilitu MediaWiki pro vytváření testovacích obrázků. Otevřete emulátor terminálu, přejděte do adresáře, kam chcete uložit hromadu testovacích souborů JPG, a spusťte

$ php path/to/mediawiki/tests/phpunit/includes/api/generateRandomImages.php

Zde je skript Bash, který by měl toto vše usnadnit bez větších problémů. Je dobré si to dát do PATH a/nebo si k tomu někde vytvořit šikovnou zkratku, díky které bude aktualizace obrázků novými obrázky triviální.

#!/bin/bash

# Declare some paths (easier to configure)
PICPATH=/path/to/image/directory
MW_INSTALL_PATH=/path/to/mediawiki

# Get to the pic path, and remove old test images
cd $PICPATH
rm *.jpg

# Run the generate script three times to give us a bunch of images
php $MW_INSTALL_PATH/tests/phpunit/includes/api/generateRandomImages.php
php $MW_INSTALL_PATH/tests/phpunit/includes/api/generateRandomImages.php
php $MW_INSTALL_PATH/tests/phpunit/includes/api/generateRandomImages.php

Šablony

  Varování: Tento seznam není úplný a je potřeba více šablon, jinak skončíte s chybou SCRIPT nebo jinými chybovými zprávami, které nejsou v angličtině!

Upload Wizard vloží několik šablon do vygenerovaných stránek s popisem souborů, které musí na wiki existovat, aby se stránky s popisem vykreslily správně. Mezi použité šablony patří:

Související odkazy

Související specifikace