Como subir archivos SVG en WordPress de forma segura

Juan Martos

23 febrero, 2025

Publicado en:

Los archivos SVG son una muy buena opción para usar gráficos en la web que requieran mostrarse sin pérdida de calidad. Sin embargo, WordPress por defecto no permite subir archivos SVG debido a posibles riesgos de seguridad.

En este post, te explico cómo habilitar la subida de SVG en WordPress de manera segura y restringiendo su uso solo a administradores.

¿Por qué WordPress bloquea los archivos SVG?

WordPress impide la subida de archivos SVG porque pueden contener código malicioso (como scripts malintencionados) que podrían comprometer la seguridad del sitio. A diferencia de otros formatos como JPG o PNG, un archivo SVG es un archivo basado en XML, lo que significa que puede ser editado manualmente y, en algunos casos, explotado con intenciones maliciosas.

Aunque el uso de archivos SVG conlleve riesgos de seguridad y posibles vulnerabilidades, hay formas seguras de permitir la subida de SVG solo a usuarios específicos, como los administradores del sitio para evitar que cualquier otro usuario tenga permisos de subida de ese tipo de archivos.

Cómo habilitar la subida de archivos SVG en WordPress solo para administradores

Para permitir la subida de archivos SVG en WordPress, podemos agregar un fragmento de código en el archivo functions.php de nuestro tema o en un plugin de funciones personalizadas.

Código para permitir la subida de archivos SVG solo a administradores

function habilitar_soporte_svg($mimes) {
if (current_user_can('administrator')) {
$mimes['svg'] = 'image/svg+xml';
}
return $mimes;
}
add_filter('upload_mimes', 'habilitar_soporte_svg');

Este método limita la subida de archivos SVG a los administradores del sitio, reduciendo la posibilidad de que otro tipo de usuarios suban archivos peligrosos.

Si eres administrador o permites que otros administradores suban archivos SVG debes conocer la fuente de ese archivo, ya que el archivo SVG puede contener código malicioso y al permitir la subida estas creando una vulnerabilidad en tu web.

Para asegurar de que el código de tu SVG está completamente limpio puedes usar la herramienta SVG Sanitizer test, que te permite añadir el código SVG y sanitizarlo.

Abre el archivo SVG con un editor de código, cópialo y pégalo en la herramienta, pulsa en «Sanitize» y te mostrará el código del SVG sanitizado, tan solo copia ese código y reemplázalo por el que tenías anteriormente, guarda el archivo y tendrás el SVG sanitizado y listo para subirlo a la web.

Alternativa para habilitar la subida de archivos SVG

Si prefieres una solución sin tocar código, hay plugins que permiten habilitar la subida de archivos SVG en WordPress de forma segura, como SVG Support y Safe SVG.

El uso de estas alternativas evitará inyecciones de código malicioso.

Habilitar la subida de archivos SVG en WordPress es muy útil pero también puede representar un riesgo si no se implementa de manera segura. La mejor opción es restringir esta funcionalidad o usando plugins y herramientas que saniticen los archivos.

Guía básica de Optimización para WordPress

Consíguela gratis

Suscríbete a mi newsletter y consigue gratis mi guía básica de Optimización para WordPress.

En ella encontrarás las diferentes tareas de optimización con consejos, recomendaciones y las herramientas necesarias para llevarlas a cabo.

guia optimizacion wordpress