Manuel:ImportImages.php
Fichier MediaWiki : importImages.php | |
---|---|
Emplacement : | maintenance/ |
Code source : | master • 1.43.1 • 1.42.6 • 1.39.12 |
Classes : | ImportImages |
importImages.php est un script qui permet de téléverser des images dans MediaWiki à partir de l'ordinateur sur lequel le wiki est configuré. Il réalise un téléversement à distance lorsque le paramètre de configuration $wgForeignFileRepos est activé ou si vous utilisez une extension telle que AWS (S3) qui le configure correctement.
Exemples
Téléverser avec le commentaire par défaut "Importing file" et l'utilisateur par défaut "Maintenance script" :
php maintenance/run.php importImages /path/to/images/directory
Téléverser avec le commentaire personnalisé "Importer les fichiers depuis le dépot de fichiers local" et l'utilisateur par défaut "Maintenance script" :
php maintenance/run.php importImages /path/to/images/directory --comment="Importer les fichiers à partir du dépot de fichiers local."
Téléversement avec le commentaire personnalisé "Importer des fichiers depuis le référentiel de fichiers local" et l'utilisateur personnalisé "Administrateur de téléversement" (qui doit déjà exister, sinon une erreur se produira) :
php maintenance/run.php importImages /path/to/images/directory --comment="Importer des fichiers à partir du dépôt de fichiers local." --user="Administrateur de téléversement"
Par défaut, importImages.php
ne cherchera pas ni ne téléversera pas les images présentes dans les sous-répertoires (récursion de répertoire).
Par conséquent, pour téléverser avec le commentaire personnalisé "Importer des fichiers depuis le référentiel de fichiers local", l'utilisateur personnalisé "Administrateur de téléversement" et rechercher récursivement les fichiers dans les sous-répertoires vous écrirez :
php maintenance/run.php importImages /path/to/images/directory --comment="Importer les fichiers à partir du dépot de fichiers local." --user="Administrateur de téléversement" --search-recursively
importImages.php ne réécrasera pas les images si une image avec le même nom existe déjà sur le wiki. Par conséquent, pour téléverser avec le commentaire personnalisé "Importer des fichiers depuis le référentiel de fichiers local", l'utilisateur personnalisé "Administrateur de téléversement" et réécraser les images existantes :
php maintenance/run.php importImages /path/to/images/directory --comment="Importer les fichiers à partir du dépot de fichiers local." --user="Administrateur de téléversement" --overwrite
Même chose que ci-dessus, mais seulement en réécrasant les types d'image fournis, par exemple pdf :
php maintenance/run.php importImages /path/to/images/directory --comment="Importer les fichiers à partir du dépot de fichiers local." --user="Administrateur de téléversement" --overwrite --extensions=pdf
Exemple d'une importation d'image réussie (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
(communément soit apache
ou www-data
). Sinon, les fichiers téléversés seront la propriété de la personne qui a exécuté le script, ce qui peut empêcher MediaWiki de pouvoir renommer, supprimer ou manipuler les fichiers ultérieurement.
Arguments
Version de 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/scriptName.php
au lieu de php maintenance/run.php scriptName
.Option | Description | Valeur par défaut | Obligatoire ? |
---|---|---|---|
--dir | chemin vers le répertoire contenant les images à importer | optionnel | |
--extensions=<exts> | liste des extensions autorisées séparées par des virgules, par défaut à $wgFileExtensions | optionnel | |
--overwrite | réécrase les images de même nom (par défaut, les sauter) | optionnel | |
--limit=<name> | limite le nombre d'images à traiter. Les images ignorées ou sautées ne sont pas comptées | optionnel | |
--from=<name> | ignore tous les fichiers, à l'exception de celui dont le nom est fourni. Utile pour reprendre des importations interrompues. Le nom du fichier doit être sous la forme canonique de base de données. | optionnel | |
--skip-dupes | saute les images qui ont déjà été téléversées sous un nom différent (vérifier le SHA1) | optionnel | |
--search-recursively | recherche récursive des fichiers dans les sous-répertoires | optionnel | |
--sleep=<sec> | pause entre les dossiers. Utilisé principalement pour le débogage | optionnel | |
--user=<username> | initialise le nom d'utilisateur du téléverseur | 'Maintenance script' |
optionnel |
--check-userblock | vérifie si l'utilisateur a été bloqué lors de l'import | optionnel | |
--comment=<text> | description du fichier | 'Importing file' |
optionnel |
--comment-file=<file> | description du contenu de ce fichier | optionnel | |
--comment-ext=<ext> | Fait que la description de chaque fichier soit chargée à partir d'un fichier portant le même nom, mais qui a l'extension fournie ici. Si une description globale est aussi fournie, elle est ajoutée. | optionnel | |
--summary=<sumary> | Résumé de téléversement, description sera utilisé s'il n'est pas fourni | optionnel | |
--license | utiliser un modèle de licence facultative | optionnel | |
--timestamp=<timestamp> | réécrase l'heure ou la date du téléversement, tous les formats d'horodatage MediaWiki sont acceptés | false |
optionnel |
--protect=<protect> | indiquer la valeur des droits (autoconfirmed, sysop) | optionnel | |
--unprotect | enlever la protection sur toutes les images téléversées | optionnel | |
--source-wiki-url | s'il est utilisé, il faut prendre à partir de cette URL les données utilisateur et le commentaire de chaque fichier importé. Par exemple, --source-wiki-url="https://en.wikipedia.org/w/
|
optionnel | |
--dry | exécution à vide sans rien importer | optionnel |
--comment-ext
définit une extension de fichier comme .meta
qui contient le commentaire du fichier, c'est-à-dire le contenu de la page des métadonnées du wiki associée à chaque fichier importé. Cette option prend en charge les métadonnées par fichier, alors que l'option --comment
prend en charge uniquement les métadonnes par import. La valeur de --comment-ext
est acceptée avec ou sans le point initial (.meta équivaut à meta), la valeur peut être entre apostrophes ou pas. Le fichier associé est recherché à la fois comme extension ajoutée ou substituée. Ainsi, l'importation de x.jpg
et la définition de --comment-ext meta
ou --comment-ext=meta
soit de x.meta
ou x.jpg.meta
seront utilisés pour définir la page des métadonnées initiale (c'est-à-dire la page affichée pour File:x.jpg
).--from
est obtenue à partir du nom de fichier, en mettant en majuscule la première lettre, en remplaçant tous les espaces par des caractères de soulignement, et en les réduisant à un seul s'il s'en trouve plusieurs consécutifs. Par exemple, pour commencer avec le fichier someFile with __weird_ spaces.png
, l'argument correct serait --from=SomeFile_with_weird_spaces.png
Résolution des problèmes
Impossible d'ouvrir un fichier bloqué
Essayer chmod -R 777 images
(même si la valeur était déjà 755, quelques fois il faut avoir 777)
Image à téléverser non trouvée
Exemple où le script ne trouve pas d'image à téléverser :
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
Chemin incorrect du répertoire
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.
Habituellement, c'est parce que le chemin vers ce dossier n'existe pas tel qu'il est formulé.
Erreur sur échec du téléversement
login as: ideakwty |
Lorsque l'utilisateur n'a pas les droits pour téléverser les images |
L'erreur suivante peut avoir deux causes :
- Les droits sur les répertoires doivent être modifiés et / ou
- l'utilisateur n'a pas les droits pour téléverser les images
Problème 1 - les droits des répertoires doivent être modifiés
- Solution - modifier les droits d'accès au répertoire

- chmod pour les quatre répertoires suivants à 777 :
- images
- images/temp
- images/thumb
- images/archive
- Si ce n'est pas déjà fait dans LocalSettings.php, supprimer le commentaire de la ligne
$wgHashedUploadDirectory = false;
en enlevant le#
du début de ligne.
Problème 2 - l'utilisateur n'a pas les droits pour téléverser les images
Voir aussi
- importDump.php - pour importer des pages
- dumpBackup.php - pour exporter des pages