web-dev-qa-db-fra.com

Limitez le nombre d'images à télécharger par publication

Existe-t-il un moyen simple de limiter à un (par publication) le nombre d'images à télécharger via le téléchargement multimédia?

3
josoroma

Je ne vais pas entrer dans les détails du code pour le moment, parce que je ne suis pas sûr que vous ayez besoin de moi. Vous devez essentiellement modifier le tableau de paramètres JavaScript SWFUpload pour définir le file_upload_limit sur 1. Malheureusement, je ne pense pas que SWFUpload vous permette de modifier cette variable de paramètres après l’a été inited, car elle a déjà lancé l’incorporation de Flash avec les paramètres.

Vous devez donc vous connecter au filtre flash_uploader pour désactiver la configuration du programme de téléchargement Flash "normal", puis à l'action pre-upload-ui et configurer le programme de téléchargement Flash à l'aide des mêmes variables que WordPress, mais avec le paramètre file_upload_limit. (Regardez la ligne 1446 de media.php pour voir ce que je veux dire).

Si vous le faisiez de cette façon, vous devriez également désactiver le formulaire de téléchargement HTML afin que l'utilisateur puisse l'utiliser pour contourner le programme de téléchargement Flash.

Au lieu de cela, vous pourriez (plus facilement, mais peut-être pas si facilement utiliser par l'utilisateur) joindre l'action load-async-upload.php (voir la ligne 202 de admin.php) pour rejeter la demande de téléchargement si l'utilisateur actuel avait déjà téléchargé une image pour la publication donnée. Cela obligerait l'utilisateur à sélectionner l'image dans Flash Uploader, puis à lancer une erreur une fois qu'il aurait été chargé en indiquant "Vous ne pouvez pas télécharger un autre fichier".

1
Joe Hoyle