web-dev-qa-db-fra.com

Wordpress 3.5 Media Uploader - N'autorisez qu'un téléchargement et certains types de fichiers

J'essaie d'inclure le nouveau WP Media Uploader dans une méta-boîte personnalisée.

J'ai trouvé ce tutoriel .

Cependant, je cherche un moyen de limiter le programme de téléchargement à n'accepter que certains types de fichiers tels que 'application/msword', 'application/vnd.ms-Excel', 'application/pdf', etc., et de renvoyer le document lié. URL vers un champ de texte que j'ai dans la metabox

Toutes les idées, les liens ou simplement tout ce qui pourrait me diriger dans la bonne direction serait hautement apprécié!

1
tiaanswart

Les types de fichiers que vous avez spécifiés "application/msword", "application/vnd.ms-Excel" et "application/pdf" sont déjà pris en charge par le programme de téléchargement de média.

Pour voir les types de fichiers mime pris en charge par défaut, appelez la fonction wp_get_mime_types () () .

Utilisez le filtre upload_mimes comme indiqué dans le code suivant pour que le téléchargeur de média accepte les types de fichiers autres que ceux par défaut.

Ajoutez le code suivant dans votre fichier themes.php de themes

// Add the filter
add_filter('upload_mimes', 'custom_upload_mimes');

function custom_upload_mimes ( $existing_mimes=array() ) {

// Add file extension 'extension' with mime type 'mime/type'
$existing_mimes['prc'] = 'application/x-mobipocket'; 

// and return the new full result
return $existing_mimes; 
}
1
Vinod Dalvi

Comme Vinod Dalvi l'a dit, vous pouvez utiliser le filtre upload_mimes pour obtenir ce dont vous avez besoin. Vous pouvez annuler l’enregistrement des types de mimes existants à l’aide de

unset($mime_types['pdf']);

et en ajoutant un nouveau type en ajoutant ensuite au tableau:

$mime_types['avi'] = 'video/avi';

par exemple

function my_myme_types($mime_types){
    $mime_types['avi'] = 'video/avi'; //Adding avi extension
    unset($mime_types['pdf']); //Removing the pdf extension
    return $mime_types;
}
add_filter('upload_mimes', 'my_myme_types', 1, 1);

Ceci est pris de ici

Vous dites :

comment puis-je limiter les types MIME aux seuls types MIME sélectionnés pour cette instance spécifique de téléchargement de média? Je ne veux pas limiter le téléchargement standard WP Editor à ces mêmes types MIME

Voulez-vous dire limiter le type mime à un seul type d'uploader? Je ne vois pas la logique impliquée, car s'il existait d'autres "instances" d'éditeur de média, les types de média "interdits" pourraient quand même être chargés.

0
Overdose