Extension:UploadWizard

This page is a translated version of the page Extension:UploadWizard and the translation is 100% complete.
Základní informace k tomuto rozšíření MediaWiki
UploadWizard
Stav rozšíření: stabilní
Zavádění Média, Speciální stránka
Popis Multisouborový průvodce načítáním, krok za krokem
Napsal(i) Neil Kandalgaonkar, Jeroen De Dauw, Mark Holmquist, Ryan Kaldari, Ankur Anand, Yuvi Panda, Michael Dale,
Nejnovější verze continuous updates
MediaWiki >= 1.42.0
Změny v databázi Ano
Tabulky uw_campaigns
Licence GNU General Public License 2.0 nebo pozdější
Zdrojový kód
README
Campaign
  • $wgUploadWizardConfig
  • upwizcampaigns
  • mass-upload
Čtvrtletní stahování 230 (Ranked 31st)
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.
  • description - nastaví počáteční hodnotu pro pole popisu.
  • 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.

This feature uses the parameters objref and 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. Passing this parameter is expected in the following format objref=$2
    • 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í

If you're testing UploadWizard for whatever reason, and you've run out of "real" images to upload as test cases, you can always use the handy MediaWiki utility for creating test images. Open a terminal emulator, get into a directory where you want to store a bunch of test JPG files, and run

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

Here's a Bash script that should make it easier to do all of this without much trouble. It's a good idea to put this in your PATH and/or make a handy shortcut to it somewhere that will make it trivial to update your images with new ones.

#!/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í: This list is not complete and more templates are required, otherwise you will end with SCRIPT error or other error messages not in English!

Upload Wizard will insert a few templates into generated file description pages, which need to exist on the wiki in order for the description pages to be rendered correctly. The templates used include:

Související odkazy

Související specifikace