WordPress por defecto no permite la carga de ficheros SVG debido a que pueden contener código malicioso.
Aún así, a veces tendremos que permitir la carga de este tipo de ficheros aunque podríamos limitarlo a uno o más tipos de roles de usuarios (administradores, editores o autores) para asegurarnos que son personas responsables que saben lo que están cargando al sitio Web.
Aquí les dejo el código que cumple exactamente con esa función:
<?php
/**
* Permito cargar ficheros SVG's solamente a usuarios con
* el rol de administrador.
*
* @param $mimes
*
* @return mixed
*/
function mg_agregar_svg_mime_type( $mimes ) {
// Guardo en una variable el usuario actual.
$usuario = wp_get_current_user();
// Una vez que compruebo que el usuario tiene el rol adecuado,
// Agrego el tipo de fichero (SVG) a la lista de los permitidos
// por WordPress.
if ( in_array( 'administrator', $usuario->roles ) ) :
$mimes['svg'] = 'image/svg+xml';
endif;
return $mimes;
}
add_filter( 'upload_mimes', 'mg_agregar_svg_mime_type' );
Bola Extra 🌟
Aquí te dejo el artículo «Por qué no es buena idea usar vectores SVG en WordPress» de Fernando Tellado donde explica con detalles los problemas de seguridad que pueden tener este tipo de ficheros.
Deja una respuesta