Příručka:ImportImages.php
| Soubor MediaWiki: importImages.php | |
|---|---|
| Lokalita: | maintenance/ |
| Zdrojový kód: | master • 1.45.1 • 1.44.3 • 1.43.6 |
| 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/run.php importImages /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/run.php importImages /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/run.php importImages /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/run.php importImages /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/run.php importImages /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/run.php importImages /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 run.php importImages /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 maintenance/run.php importImages Import Images Imports images and other media files into the wiki Usage: php maintenance/run.php importImages [OPTION]... <dir> <dir> : Path to the directory containing images to be imported
php maintenance/NazevSkriptu.php namísto php maintenance/run.php NazevSkriptu.| 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/run.php importImages /store/wiki/absurd_pic jpg Import Images Warning: Invalid argument supplied for foreach() in /usr/share/mediawiki1.7/maintenance/run.php importImages on line 34
Nesprávná cesta ke složce
t@f66677:~/public_html/dead.com/public/w/maintenance$ php run.php importImages /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