WordPress no me permite subir imágenes webp.

Reading time aprox: 2 minutes, 10 seconds

WordPress no me permite subir imágenes webp.

WEBP es un formato de imagen o, mejor dicho, es un formato de archivo de imagen, creado por Google. Está diseñado para ser ligero y por tanto de carga rápida en los navegadores web.

Hoy es un formato «nativo» en muchos navegadores modernos. La ventaja de la forma de codificación de los archivos WEBP, hacen que el resultado sea un 28% más pequeño que la misma imagen en un archivo PNG.

Así que ¿a qué esperamos? Vamos a implementar todas las imágenes de nuestro sitio en formato WEBP, irá todo más rápido.

Lo primero que viene a la cabeza es ¿Cómo edito imágenes en ese formato? Respuesta: los programas de tratamiento de imagen como Photoshop y GIMP soportan ese formato.

Claro, pero ¿Qué hago con las imágenes que ya tengo, cómo las convierto? Respuesta: Google ha previsto esta incidencia y suministra una aplicación para la conversión y hay muchos recursos online para realizar esa conversión (busca por ejemplo: «conversión webp»).

WordPress no me permite subir imágenes webp.

Y cuando ya tenemos todo listo, nos encontramos con que WordPress no nos permite subir ese tipo de imágenes a nuestra biblioteca de medios.

Lo siento, este tipo de archivo no está permitido por motivos de seguridad.

Por suerte, tiene solución (varias, de echo) como casi siempre.

La primera y, como siempre la más fácil, es instalar un plugin que nos permita realizar la tarea, pero… primero debemos saber ¿qué problema queremos solucionar?

Cuando queremos subir un archivo a la biblioteca, WordPress necesita saber qué tipo de archivo es, para almacenarlo correctamente y, más importante, para tratarlo correctamente durante la «subida» y durante la «manipulación».

La diferencia se identifica con lo que se conoce como «tipo MIME» y WordPress reconoce un montón de tipos distintos, pero no el de los archivos con tipo image/webp.

Los tipos mime de imagen que WordPress reconoce son:

    'jpg|jpeg|jpe'                 => 'image/jpeg',
    'gif'                          => 'image/gif',
    'png'                          => 'image/png',
    'bmp'                          => 'image/bmp',
    'tif|tiff'                     => 'image/tiff',
    'ico'                          => 'image/x-icon',

El problema a solucionar, entonces, es que WordPress no reconoce el tipo MIME y queremos que lo reconozca.

Como decía antes, la forma fácil es instalar un plugin, para lo que nos dirigimos al menú Plugins -> Añadir nuevo y en la caja de búsqueda, tecleamos algo como «mime type».

Agregando el plugin de tipos MIME
Agregando el plugin de tipos MIME

Ahora, si queremos ser un poco más atrevidos, tenemos aún dos soluciones posibles:

Solución nº 1

Como WordPress no tiene este tipo MIME en la matriz de tipos posibles, considera que es un tipo de archivo peligroso y, es por eso, que no permite que se suba.

La solución rápida pero «NO recomendada» es decirle a WordPress que ignore la seguridad, lo que hacemos fácilmente introduciendo una línea más en el archivo wp-config.php:

define('ALLOW_UNFILTERED_UPLOADS', true);

Solución nº 2

La forma más correcta de hacer el cambio, consiste en cambiar la matriz de tipos reconocidos por WordPress, e insertar el tipo correspondiente entre los de imágenes.

Para esto recurrimos una vez más a nuestro tema hijo, concretamente a modificar el archivo functions.php e insertar una función que incluya el tipo que necesitamos en la matriz de tipos aceptados.

El código a añadir es:

function agrega_mime_type ( $mime_types ) {
 $mime_types['webp'] = 'image/webp';
 return $mime_types;}

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

Si quisiéramos además del tipo «webp» añadir los archivos de tipo «svg» (imagen de tipo vectorial) no tenemos más que agregar otra línea a la misma función, para incluir el tipo que queremos; en este caso: «$mime_types['svg'] = 'image/svg+xml';», así que el código final es:

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

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


¡Gracias por leernos!


¡Tus comentarios y preguntas nos ayudan a mejorar, por favor comenta!

6 comentarios sobre “WordPress no me permite subir imágenes webp.

  1. Maravillos, me ha sido muy útil para configurar la subida y después de tanto tiempo buscando un código que funcionará.

    Tal vez otros lo implementaban de forma erronea.

    1. Hola Alfredo,
      en principio no hay razón para que no funcione. ¿Puedes subir el código que has entrado?, así podremos ver si hay algún fallo.
      Saludos.

  2. Es aun mas sencillo si instalan el plugin WP Enable WebP, se los recomiendo, les habilita la cargar de los archivos ya editados en formato *.webp desde la sección «Medios» En WordPress… Saludos a todos!

    1. Gracias por tu comentario, Edanis.
      Sí es cierto que con un plugin, «todo» es más fácil, pero la intención del artículo es que se entienda las razones y cómo se puede solventar. La decisión de cómo hacerlo (con plugins o a mano) es totalmente de cada uno.
      Saludos.

Responder a Edanis Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

11 − tres =

Para ofrecer las mejores experiencias, utilizamos tecnologías como las cookies para almacenar y/o acceder a la información del dispositivo. El consentimiento de estas tecnologías nos permitirá procesar datos como el comportamiento de navegación o las identificaciones únicas en este sitio. No consentir o retirar el consentimiento, puede afectar negativamente a ciertas características y funciones.    Más información
Privacidad