Después del tutorial de cómo quitar el h2 automático de Descripción o Cambiar el encabezado del catálogo de WooCommerce, me llegaron muchas consultas de cómo modificar el resto de encabezados mal puestos. Así que en este tutorial os voy a enseñar cómo cambiar el encabezado de los productos relacionados en WooCommerce.
Contexto
Por defecto este encabezado viene en H2 en WooCommece, lo que hace que tenga la misma importancia que el resto de encabezados que hemos puesto en la descripción del producto para posicionar.
Esto se repite en todos los productos, así que con el siguiente ajuste le bajaremos la importancia para dársela al contenido que de verdad importa.
Snippet a añadir
Lo primero deberemos tener un Tema hijo o child theme instalado, para que al actualizar la plantilla estos cambios no se vayan. Una vez hecho esto copiamos y pegamos este código en el functions.php de nuestra plantilla:
add_filter('woocommerce_product_related_products_heading', function(){return false;});
function woocommerce_product_loop_start( $echo = true ) {
ob_start();
wc_set_loop_prop( 'loop', 0 );
wc_get_template( 'loop/loop-start.php' );
$loop_start = apply_filters( 'woocommerce_product_loop_start', ob_get_clean() );
if ( $echo ) {
// check to see if it's the related loop
if (wc_get_loop_prop('name') == 'related'){
// Change the heading to whatever you want
echo "<h3>Productos relacionados</h3>";
}
echo $loop_start; // WPCS: XSS ok.
} else {
return $loop_start;
}
}
Con esto si usamos el inspector o una extensión para ver los encabezados podemos comprobar que pasa a H3:

Si lo queréis pasar a otro encabezado o un div, tan fácil como modificar la etiqueta dentro del código.
Se podría hacer también modificando las plantillas de WooCommerce, pero creo que esto es mucho mejor tanto de tiempo como optimización. Si te gustan este tipo de tutoriales con miniajustes de WooCommerce te recomiendo ver el resto.
Cualquier duda como siempre dejarla en comentarios.
Al añadir ese snippet me aparece el siguiente mensaje:
El fragmento de código ha sido desactivado debido a un error en la línea 4:
No se puede redeclarar la función woocommerce_product_loop_start.
Hola Gema,
Es un código que suelo usar y sigue funcionando. ¿Lo has introducido en el functions.php del Child? En el code snippets no funciona.
Si has hecho esto entonces la plantilla que tengas te da la incompatibilidad.
Un saludo!