web-dev-qa-db-fra.com

Restreindre les téléchargements de fichiers par extension?

Existe-t-il un moyen dans WordPress 3.1 de limiter les téléchargements de fichiers autorisés par extension (images uniquement) et par la taille du fichier?

Question bonus: Puis-je limiter les utilisateurs à ne pouvoir visualiser que les fichiers qu'ils ont eux-mêmes téléchargés?

1
EddyR

Je crois que vous pouvez ajouter un filtre à upload_mimes pour limiter certains types. Le crochet: http://adambrown.info/p/wp_hooks/hook/upload_mimes

Le filtre:

add_filter('upload_mimes','restict_mime'); 

function restict_mime($mimes) { 
    $mimes = array( 
                'jpg|jpeg|jpe' => 'image/jpeg', 
                'gif' => 'image/gif', 
                'png' => 'image/png', 
    ); 
    return $mimes;
}

D'après ce que j'ai compris, cela ne fonctionnera pas pour les administrateurs ni pour les utilisateurs dotés de la capacité unfiltered_upload. Jetez également un coup d'oeil à cet article . Limitez le téléchargement d'images à une seule et désactivez les types de fichiers audio, vidéo et autres documents à télécharger

Une alternative au contrôle de la taille limite serait d'utiliser .htaccess ou php.ini:

Pour la limite de téléchargement, vous pouvez définir dans .htaccess l’un des suivants:

LimitRequestBody 1073741824  //( 1MB)
php_value upload_max_filesize 1M
php_value post_max_size 1M

Pour php.ini vous pouvez définir upload_max_filesize = 1M

6
Wyck