Subir archivos con formatos no permitidos


Con este método permitimos la subida de absolutamente todos los formatos a nuestro WordPress. Aquí os dejo la función que se tiene que añadir al wp-config.php:

define('ALLOW_UNFILTERED_UPLOADS', true);

No es muy recomendable hacerlo ya que supone un peligro para la seguridad de nuestro WordPress así que pasemos al segundo método que es el que recomiendo.

Con este método permitimos la subida de formatos concretos, sólo los que nos interesan a nosotros:

function bp_mime_type ( $mime_types ) {
 $mime_types[''] = '';
 return $mime_types;}

add_filter('upload_mimes', 'bp_mime_type', 1, 1);

Añadimos tipos tipos de MIME que queremos permitir y quedaría algo así:

function bp_mime_type ( $mime_types ) {
 $mime_types['svg'] = 'image/svg+xml';
 return $mime_types;}

add_filter('upload_mimes', 'bp_mime_type', 1, 1);

Si quieres permitir más de un formato, puedes duplicar la línea de la variable $mime_types y hacer el mismo proceso con el otro formato, tal que así:

function bp_mime_type ( $mime_types ) {
 $mime_types['svg'] = 'image/svg+xml';
 $mime_types['epub'] = 'application/epub+zip';
 return $mime_types;}

add_filter('upload_mimes', 'bp_mime_type', 1, 1);

Lista oficial de tipos MIME