Programación Web

Cómo modificar el tamaño de las imágenes de la galería en Woocommerce

Hoy he tenido que modificar el tamaño de la galería de producto que viene por defecto en Woocommerce, en concreto para que en las páginas de producto la foto no se apreciase pixelada.

El problema

El tema “Onea” permite una plantilla para las páginas de producto de Woocommerce en la cuál las imágenes de la galería de producto se apilan debajo de la imagen principal.

En la captura podemos ver la imagen principal y justo debajo la primera de la galería, si ves la imagen al 100% notarás un pixelado notable en la imagen de abajo.

Imagen destacada vs Primera imagen de la galería

Como habrás notado, se trata de joyas, sector en el que el diseño lo es todo, y este defecto no era tolerable.

Si vamos al inspector de elementos veremos que la imagen que se está pintando ahí tiene 300px de ancho pero se ajusta al 100% de un elemento de más de 600px, de ahí la distorsión. Veamos como solucionarlo.

Curiosamente, el autor del tema no tuvo esto en cuenta cuando creó la plantilla de producto.

La solución

A mi me ha llevado varias horas pelearme con este problema hasta que he visto dónde se “pintaba” el tamaño de la foto del thumbnail de la galería de fotos en la página de producto de Woocommerce, pero te dejo una solución que puedes aplicar en un minuto.

Resulta que en el archivo includes/wc-template-functions.php dentro del core de Woocommerce hay una función llamada wc_get_gallery_image_html que es la que crea estos elementos html. En ella se llama al filtro woocommerce_gallery_image_size para definir el tamaño que tendrá la “miniatura” de la imagen de la galería.

Por defecto Woocommerce indica que tome el tamaño “thumbnail” y eso está bien para la mayoría de los casos, pero no para el nuestro. Por tanto debemos engancharnos a ese filtro y pasarle el tamaño que queramos. Se hace poniendo este código en el functions.php de tu theme si es un child theme, o en un plugin.

function tu_funcion( ) {
    $size = apply_filters( 'woocommerce_gallery_medium_size', apply_filters( 'woocommerce_gallery_medium_size', 'full' ) );
    return $size;
}
add_filter( 'woocommerce_gallery_image_size', 'tu_funcion' );

Como ves en el código le estamos diciendo a WordPress a través de este filtro que tome la imagen de tamaño medio para pintarla en este elemento.

Y funciona como un tiro.

Veamos el resultado final:

La imagen ya modificada

Como puedes ver ahora las miniaturas de la galería tienen ya una apariencia correcta.

Espero haberte ayudado, si ha sido así, cuéntamelo en un comentario.

fruiz

Ver comentarios

Share
Publicado por
fruiz

Recent Posts

Claude Code Routines: Anthropic acaba de darle un turno de noche a tu IDE

Anthropic lanzó Routines en Claude Code el 14 de abril de 2026. Tu agente IA…

56 años atrás

¿Sabías que tu web de WordPress carga 2 MB de CSS que no usa? Bienvenido a los page builders

Abre Chrome DevTools en cualquier web hecha con Elementor y mira la pestaña Coverage. Entre…

56 años atrás

Elementor en 2026: ¿page builder imprescindible o lastre de rendimiento?

Análisis equilibrado de Elementor en 2026: ecosistema masivo contra problemas de rendimiento, CSS inflado y…

56 años atrás

Build vs Buy: el informe de Retool 2026 explicado para no-techies

Retool ha publicado su informe Build vs Buy 2026 y los datos son reveladores: el…

56 años atrás

Microsoft dice que los business agents matarán al SaaS en 2030: ¿tiene razón?

Microsoft predice que los agentes de IA empresariales acabarán con el modelo SaaS tradicional antes…

56 años atrás

Por qué el shadow IT con IA es la mejor noticia para las pymes

El 60% de las empresas ya construyen software fuera del control de IT. Con la…

56 años atrás