WordPress 5.8 añade compatibilidad con imágenes WebP


WebP es un formato de imagen moderno que ofrece una mejor compresión con y sin pérdidas para las imágenes en la web. Las imágenes WebP son un 30% más pequeñas de media que sus equivalentes JPEG o PNG, por lo que los sitios son más rápidos y utilizan menos ancho de banda. Según caniuse, WebP es compatible con todos los navegadores modernos.

A partir de la versión 5.8 de WordPress, puedes subir y utilizar imágenes WebP en WordPress como lo harías con una imagen JPEG o PNG hoy en día (siempre y cuando tu servicio de alojamiento soporte WebP). El cambio al formato WebP para tus imágenes mejorará el rendimiento de tu sitio y la experiencia de tus visitantes. 

Cómo te ayuda WebP

Las imágenes WebP son significativamente más pequeñas que sus equivalentes JPEG, por lo que los visitantes de tu sitio verán la página completa cargada más rápidamente. Las imágenes más pequeñas necesitan menos ancho de banda para transmitirse, y tus imágenes siguen obteniendo todos los beneficios de respuesta de srcset y lazy loading por defecto. Por último, WebP es compatible con los principales navegadores, por lo que la mayoría de los sitios pueden empezar a utilizarlo hoy mismo.

Creando imágenes WebP

Las herramientas de edición de imágenes soportan la exportación en WebP; también puedes utilizar las herramientas de conversión por línea de comandos o herramientas basadas en la web como Squoosh. Una vez que guardes tus imágenes como WebP, súbelas a WordPress y utilízalas como harías con cualquier otra imagen.

Usando imágenes WebP

Las imágenes WebP funcionan como cualquier otra imagen en WordPress con algunas pequeñas advertencias.

Las imágenes WebP admiten compresión con y sin pérdida, así como un formato animado y compatibilidad para imágenes transparentes. En WordPress, el formato WebP sin pérdidas sólo es compatible cuando el servidor de alojamiento utiliza Imagick hasta que LibGD añada soporte. Además, los formatos animados y alfa aún no son compatibles con las imágenes redimensionadas (en su lugar se crean imágenes con pérdida cuando se suben en estos formatos).

La compatibilidad con WebP en la biblioteca de medios requiere que la biblioteca de procesamiento de imágenes de tu servidor web (WordPress soporta tanto Imagick como GD) soporte el formato WebP. Afortunadamente, estas bibliotecas han sido compatibles con WebP durante bastante tiempo, por lo que la compatibilidad está ampliamente disponible. Si tu servidor web no admite WebP, verás un mensaje de error cuando intentes subir una imagen WebP.

Si tu audiencia incluye un número significativo de usuarios en un navegador no compatible (Internet Explorer 11, por ejemplo), evita usar imágenes WebP, o utiliza un sistema de colas del tipo browser polyfill.

Planes para el futuro

El equipo del componente multimedia también está explorando la opción de que WordPress realice la conversión del formato de imagen en las imágenes subidas, utilizando WebP como formato de salida por defecto para las imágenes de tamaño inferior. Puedes seguir el progreso y probar esta función en el trac ticket. También estamos pendientes de formatos aún más modernos, como AVIF y JPEGXL, que mejorarán la compresión y reducirán aún más los recursos necesarios para la misma.

Preguntas frecuentes

¿Cómo puedo ajustar la calidad de compresión de las imágenes WebP?

Los desarrolladores o plugins pueden utilizar el filtro wp_editor_set_quality para establecer el ajuste de calidad. El tipo MIME pasado permite el ajuste por tipo, por ejemplo:

// Use a quality setting of 75 for WebP images.
function filter_webp_quality( $quality, $mime_type ) {
  if ( 'image/webp' === $mime_type ) {
     return 75;
  }
  return $quality;
}
add_filter( 'wp_editor_set_quality', 'filter_webp_quality', 10, 2 );

¿Qué sucede si activo el filtro para usar sub-tamaños de WebP, pero subo JPEG? ¿Los sub-tamaños tienen que coincidir con el original?

Por defecto, WordPress crea las imágenes de sub-tamaño del mismo tipo que el archivo subido, así que sube archivos WebP para obtener archivos WebP en tu sitio. Si quieres experimentar con la subida de JPEG y que WordPress los convierta automáticamente a WebP para tus imágenes de distintos sub-tamaños, echa un vistazo a este plugin (ticket de trac relacionado).

Si utilizo WordPress MultiSitio, ¿funcionarán todos mis sitios con imágenes WebP?

No. WordPress MultiSitio almacena los tipos de archivos que los usuarios pueden subir cuando se crea un sitio. Estamos trabajando para mejorar esto en #53167. Mientras tanto, para asegurarse de que todos los sitios existentes en una red permiten archivos WebP, puedes utilizar el filtro site_option en un mu-plugin de red para añadir webp a los tipos de archivo permitidos para todos los sitios de la red:

// Ensure all network sites include WebP support.
add_filter(
  'site_option_upload_filetypes',
  function ( $filetypes ) {
    $filetypes = explode( ' ', $filetypes );
    if ( ! in_array( 'webp', $filetypes, true ) ) {
      $filetypes[] = 'webp';
      $filetypes   = implode( ' ', $filetypes );
    }

    return $filetypes;
  }
);

Deja una respuesta