Extension:UploadWizard
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 |
|
|
|
|
|
Č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
- Ujistěte se, že do adresáře
images
může váš webový server zapisovat. - Nainstalujte knihovny a binární soubory ImageMagick.
- Stáhněte a rozbalte soubory UploadWizard, jak je uvedeno zde: Special:ExtensionDistributor/UploadWizard
- Přidejte do svého LocalSettings.php následující konfiguraci:
$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:
- Přihlaste se na Flickr;
- Přejděte na stránku Apps By You na Flickru App Garden;
- Klikněte na 'Získat další klíč';
- Zvolte 'Požádat o nekomerční klíč';
- 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 do LocalSettings.php.
$wgUseInstantCommons = true;
- Možná budete chtít nastavit v LocalSettings.php, kde
$wgUploadNavigationUrl = '/wiki/Special:UploadWizard';
/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',
],
],
],
];
$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žijtefields[]
. - id2: Pokud je zadán, použije se tato hodnota místo druhé hodnoty
fields[]
. Místo toho použijtefields[]
.
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
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:
- the "Information" template (you could use mediawiki's export tool to import this template into your own installation of mediawiki)
- Description language identifiers like the "En" template, if none are defined, then only {{en}} is used.
- the Location template for geocoordinates
- Various licensing tags (which are configurable)
- (Optionally) a template to indicate that a file is uncategorized
Související odkazy
- How do I add custom license to Extension:UploadWizard?
- Dokumentace kampaní
- Dokumentace pro vývojáře
- Extension:UploadWizard/Error behavior
- Extension:EnhancedUpload – nová speciální stránka pro vícenásobné nahrávání a zlepšuje nahrávání přetažením ve VisualEditoru
- Wikimedia ops poznámky
- Commons:Upload Wizard – the Upload Wizard info page in Wikimedia Commons
- Extension:MediaUploader – Flexibilní, vícesouborový, krok za krokem uploader pro uživatele třetích stran, který byl vytvořen pro UploadWizard
- Extension:MsUpload
- Ankur Anand's work on Flickr & geolocation integration
Související specifikace
- Vlastní funkce licence WikiText
- Lokace - zadávání gps souřadnic / jejich odvození z EXIFu
Toto rozšíření se používá na jednom nebo více projektech Wikimedie. Pravděpodobně to znamená, že rozšíření je stabilní a funguje dostatečně dobře, aby jej mohly používat weby s tak vysokou návštěvností. Vyhledejte tento název rozšíření v konfiguračních souborech CommonSettings.php a InitialiseSettings.php Wikimedie, abyste viděli, kde je nainstalováno. Úplný seznam rozšíření nainstalovaných na konkrétní wiki lze vidět na stránce wiki Special:Version.
Toto rozšíření je zahrnuto v následujících wiki farmách/hostitelích a/nebo balíčcích:
Toto není autoritativní seznam. Některé wiki farmy/hostitelé a/nebo balíčky mohou toto rozšíření obsahovat, i když zde nejsou uvedeny. Pro potvrzení se vždy obraťte na své wiki farmy/hostitele nebo balíček.