Příručka:ImportImages.php
Soubor MediaWiki: importImages.php | |
---|---|
Lokalita: | maintenance/ |
Zdrojový kód: | master • 1.42.3 • 1.41.4 • 1.39.10 |
Třídy: | ImportImages |
importImages.php je script, který nahrává obrázky do MediaWiki ze stejného počítače, kde je konfigurována wiki. Pokud je konfigurační parametr $wgForeignFileRepos správně nakonfigurován, nebo pokud používáte rozšíření, které jej správně konfiguruje, jako je rozšíření AWS (S3) , provede vzdálené nahrávání.
Příklady
Nahrajte s výchozím komentářem "Importing file" a výchozím uživatelem "Maintenance script":
php maintenance/importImages.php /path/to/images/directory
Nahrajte s vlastním komentářem "Import souborů z místního úložiště souborů" a výchozím uživatelem "Maintenance script":
php maintenance/importImages.php /path/to/images/directory --comment="Import souborů z místního úložiště souborů"
Nahrajte s vlastním komentářem "Import souborů z místního úložiště souborů" a vlastním uživatelem "Nahraný admin" (který již musí existovat, jinak dojde k chybě):
php maintenance/importImages.php /path/to/images/directory --comment="Import souborů z místního úložiště souborů" --user="Nahraný admin"
importImages.php
nebude ve výchozím nastavení vyhledávat a nahrávat obrázky v podadresářích (rekurze adresáře).
Proto nahrajte s vlastním komentářem "Import souborů z místního úložiště souborů", vlastní uživatel "Nahraný admin": a rekurzivně vyhledejte soubory v podadresářích:
php maintenance/importImages.php /path/to/images/directory --comment="Import souborů z místního úložiště souborů" --user="Nahraný admin" --search-recursively
importImages.php nepřepíše obrázky, pokud obrázek se stejným názvem již na wiki existuje. Proto nahrajte s vlastním komentářem "Import souborů z místního úložiště souborů", vlastním uživatelem "Nahrávající admin" a přepište existující obrázky:
php maintenance/importImages.php /path/to/images/directory --comment="Import souborů z místního úložiště souborů" --user="Nahrávající admin" --overwrite
Stejné jako výše, ale pouze přepsání daných typů obrázků, např. pdf:
php maintenance/importImages.php /path/to/images/directory --comment="Import souborů z místního úložiště souborů" --user="Nahrávající admin" --overwrite --extensions=pdf
Příklad, jak vypadá úspěšný import jednoho obrázku (Foo.jpg):
root@f345:/home/t/public_html/mywikisite/public/w/maintenance# php importImages.php /home/t/public_html/import --extensions=svg,png,jpg,jpeg,gif,bmp,SVG,PNG,JPG,JPEG,GIF,BMP
Import Images Importing Foo.jpg...done. Found: 1 Added: 1 root@f345:/home/t/public_html/mywikisite/public/w/maintenance# |
apache
(běžně buď apache
nebo www-data
). V opačném případě budou nahrané soubory ve vlastnictví osoby, která skript spustila, což může později zabránit MediaWiki v možnosti přesunovat, mazat nebo jinak manipulovat se soubory.
Argumenty
Verze MediaWiki: | ≥ 1.21 |
$ php importImages.php Import Images Imports images and other media files into the wiki USAGE: php importImages.php [options] <dir> <dir> : Path to the directory containing images to be imported
Volba | Popis | Výchozí | Povinné? |
---|---|---|---|
--dir | Cesta k adresáři obsahujícímu obrázky, které mají být importovány | Volitelné | |
--extensions=<exts> | Seznam povolených rozšíření oddělených čárkami, výchozí hodnota je $wgFileExtensions | Volitelné | |
--overwrite | Přepsat existující obrázky se stejným názvem (výchozí nastavení je přeskočit) | Volitelné | |
--limit=<name> | Omezte počet obrázků ke zpracování. Ignorované nebo přeskočené obrázky se nepočítají | Volitelné | |
--from=<name> | Ignorujte všechny soubory, dokud nebude ten s daným názvem. Užitečné pro obnovení přerušených importů. Název by měl být ve formě kanonické databáze souboru. | Volitelné | |
--skip-dupes | Přeskočit obrázky, které již byly nahrány pod jiným názvem (zkontroluje SHA1) | Volitelné | |
--search-recursively | Rekurzivně vyhledávat soubory v podadresářích | Volitelné | |
--sleep=<sec> | Spánek mezi soubory. Užitečné hlavně pro ladění | Volitelné | |
--user=<username> | Nastavení uživatelského jména uživatele, který video nahrál | 'Maintenance script' |
Volitelné |
--check-userblock | Zkontrolujte, zda nebyl uživatel během importu zablokován | Volitelné | |
--comment=<text> | Nastavit popis souboru | 'Importing file' |
Volitelné |
--comment-file=<file> | Nastavit popis obsahu tohoto souboru | Volitelné | |
--comment-ext=<ext> | Způsobí, že popis každého souboru bude načten ze souboru se stejným názvem, ale s poskytnutou příponou. Pokud je uveden také globální popis, je připojen. | Volitelné | |
--summary=<sumary> | Nahrajte shrnutí, pokud nebude poskytnut popis, použije se | Volitelné | |
--license | Použijte volitelnou licenční šablonu | Volitelné | |
--timestamp=<timestamp> | Přepište čas/datum nahrávání, všechny formáty časových razítek MediaWiki jsou přijímány | false |
Volitelné |
--protect=<protect> | Zadejte hodnotu ochrany (autoconfirmed, sysop) | Volitelné | |
--unprotect | Zruší ochranu všech nahraných obrázků | Volitelné | |
--source-wiki-url | Pokud je to zadáno, vezměte data uživatele a komentáře pro každý importovaný soubor z této adresy URL. Například, --source-wiki-url="https://en.wikipedia.org/w/
|
Volitelné | |
--dry | Nasucho, nic nedovážet | Volitelné |
--comment-ext
definuje příponu souboru jako .meta
, která obsahuje komentář k souboru, tj. obsah stránky wiki-metadata přidružené ke každému importovanému souboru. To podporuje metadata pro jednotlivé soubory, zatímco možnost --comment
podporuje pouze metadata pro import. Hodnota --comment-ext
funguje s nebo bez úvodní tečky (.meta i meta), hodnota může být uvedena nebo nemusí. Přidružený soubor je prohledáván jako připojená i nahrazená přípona. Proto import x.jpg
a nastavení --comment-ext meta
nebo --comment-ext=meta
buď x.meta
nebo x.jpg.meta
bude použito k nastavení úvodní stránky metadat (tj. stránky zobrazené pro File:x.jpg
).}}
--from
se získá z názvu souboru tak, že se první písmeno napíše velkým písmenem, všechny mezery se nahradí podtržítkem a potom se několik po sobě jdoucích podtržítek nahradí jedním podtržítkem. Chcete-li například začít se souborem someFile with __weird_ spaces.png
, správný argument by byl --from=SomeFile_with_weird_spaces.png
Odstraňování problémů
Nelze otevřít zámek souboru
Zkuste chmod -R 777 images
(i když už byl nastaven na 755, někdy je potřeba nastavit na 777)
Nenalezen obrázek k nahrání
Příklad, kdy skript nenajde žádný obrázek k nahrání:
vi-notebook:/var/lib/mediawiki1.7# php maintenance/importImages.php /store/wiki/absurd_pic jpg Import Images Warning: Invalid argument supplied for foreach() in /usr/share/mediawiki1.7/maintenance/importImages.php on line 34
Nesprávná cesta ke složce
t@f66677:~/public_html/dead.com/public/w/maintenance$ php importImages.php /m gif bmp PNG JPG GIF BMP Import Images No suitable files could be found for import.
Obvykle je to proto, že cesta ke složce je nesprávná.
Chyba při nahrávání
login as: ideakwty |
Pokud uživatel nemá oprávnění nahrávat obrázky |
Následující chyba může být způsobena dvěma problémy:
- Je třeba změnit oprávnění k adresáři a/nebo
- Uživatel nemá oprávnění nahrávat obrázky
Problém 1 - Je třeba změnit oprávnění k adresáři
- Řešení - Změna režimu adresáře
- chmod následující čtyři složky na 777:
- images
- images/temp
- images/thumb
- images/archive
- Pokud to ještě nebylo provedeno, v LocalSettings.php odkomentujte řádek
$wgHashedUploadDirectory = false;
odstraněním#
před řádkem.
Problém 2 - Uživatel nemá oprávnění nahrávat obrázky
Související odkazy
- importDump.php - pro import stránek
- dumpBackup.php - pro export stránek