Habilitar subir imágenes SVG a WordPress

En este tutorial vamos a aprender cómo permitir que WordPress pueda subir imagenes en formato SVG. Simplemente agregando un pequeño código, sin plugin alguno.

SVG (Scalable Vector Graphics) es un formato vectorial que no pierde calidad cuando su tamaño se agranda. Como toda la información del archivo es vectorial, su tamaño también es muy reducido. Es muy recomendado utilizar este formado para logotipos e imágenes vectoriales.

Sin embargo, WordPress no permite por defecto cargar un fichero SVG en tu biblioteca de medios. Si lo intentas, aparecerá un mensaje como este:

Habilitar subir imágenes SVG a WordPress.
Habilitar subir imágenes SVG a WordPress.

Ha habido un error al subir “mi-logo.svg”
Lo siento, este tipo de archivo no está permitido por motivos de seguridad.

Y WordPress tiene razón. Los archivos SVG es un tipo de formato XML que por naturaleza contener código malicioso dentro de la propia imagen. Es una puerta abierta para que aquellos usuarios que tienen permisos para subir imágenes a tu biblioteca infecte tu sitio web. Así que, aunque parezca una tontería, está muy bien que WordPress bloquee por defecto este tipo de archivos.

No obstante, si en nuestra instalación WordPress somos los únicos que tenemos permiso para subir archivos a la biblioteca de medios, podemos permitirnos subir este tipo de ficheros. Obviamente no vamos a infectar nuestro sitio web a drede 🙂

Por lo tanto, en este tutorial vamos a aprender cómo permitir la subida de SVG en la biblioteca de medios con un código. 

Permitir subir imágenes SVG a WordPress

Una vez más, copiaremos este código en nuestro plugin personalizado o en el archivo functions.php de nuestro tema actual.

// Habilitar la subida de imágenes en formato SVG en WordPress
add_filter( 'upload_mimes', 'jc_custom_upload_mimes' );
function jc_custom_upload_mimes( $existing_mimes = array() ) {
	$existing_mimes['svg'] = 'image/svg+xml';
	return $existing_mimes;
}

¿Has visto que fácil? Con este código tan corto WordPress ya te permitirá subir archivos SVG a tu biblioteca. Si lo intentas, verás que lo subirá sin problema alguno.

Eso sí, los SVG los tratará como un archivo, no como una imagen. Eso significa que no podrás modificar su tamaño u otras opciones que si te permite con las imágenes. Por este motivo, te recomiendo que la subas con el tamaño que quieras que se visualice en la web.

En caso de que en tu instalación WordPress existan más usuarios con permisos de subir archivos, te recomiendo que elimines el código que hemos introducido después de subir la imagen SVG. De esta manera podrás usar el archivo SVG que has subido pero los demás usuarios no podrán subir de más. Siempre velando por la seguridad de tu WordPress 🙂

Resumen y conclusión

Una vez más, con un simple filtro de WordPress podemos habilitar subir archivos SVG en nuestra biblioteca. Aunque WordPress siempre tenga unas medidas de seguridad por defecto, siempre nos da cancha a los usuarios decidir si utilizarlas o no.

Si eres diseñador gráfico y eres familiar con los archivos SVG, este tutorial te irá de perlas para subir finalmente tu logotipo en formato vectorial.

¿Tienes alguna pregunta acerca de este tutorial o quieres motivarme a que escriba otro tutorial? Contacta conmigo y hablamos 🙂