J'utilise Wordpress 3.4.2 pour un blog privé, c'est-à-dire un blog sur lequel je ne peux que poster. Désormais, Wordpress m'empêche de télécharger certains types de fichiers (tels que les fichiers source C #). Autant que je sache, il existe une liste blanche qui définit ce qui peut être téléchargé.
Y a-t-il un plugin qui peut étendre - ou mieux, même désactiver - cette liste blanche?
Toutes les autres réponses me disent que je devrais éditer mon thème mais je préférerais avoir un plugin pour cela (pour ne pas avoir à éditer tous mes thèmes).
Aussi, j'ai trouvé ce plugin mais, encore une fois, il me faut éditer un fichier sur mon serveur (c'est probablement écrasé lorsque le plugin est mis à jour).
Alors, y a-t-il autre chose?
Malheureusement, la réponse de toscho ne fonctionne pas - du moins pas dans Wordpress 3.4 et supérieur.
La solution correcte est la suivante:
#
# For this, see: wp-includes/capabilities.php > map_meta_cap()
#
function wpse_6533_map_unrestricted_upload_filter($caps, $cap) {
if ($cap == 'unfiltered_upload') {
$caps = array();
$caps[] = $cap;
}
return $caps;
}
add_filter('map_meta_cap', 'wpse_6533_map_unrestricted_upload_filter', 0, 2);
Vous pouvez créer un plugin ou l'ajouter au fichier de configuration, mais cela fonctionne pour 3.9.2.
define('ALLOW_UNFILTERED_UPLOADS', true);
Filtrez 'user_has_cap'
et réglez 'unfiltered_upload'
sur 1.
Exemple de code non testé:
/*
Plugin Name: Remove Uploads Filter
Plugin URI: http://wordpress.stackexchange.com/questions/67225/allow-all-file-types-for-upload
Description: Disables white-list filter for uploads
Version: 1.0
Author: WPSE - @toscho
*/
add_filter( 'user_has_cap', 'wpse_67225_unfiltered_upload' );
function wpse_67225_unfiltered_upload( $caps )
{
$caps['unfiltered_upload'] = 1;
return $caps;
}