blog webempresa

Quitar productos relacionados en WooCommerce

por | Feb 17, 2023 | WooCommerce

Cómo quitar productos relacionados en WooCommerce

En cualquier tienda, ofrecemos al cliente productos parecidos al que está buscando, por si el que está viendo no cumple sus expectativas. Esto en el mundo de las tiendas online se traduce en establecer unos productos relacionados dentro de WooCommerce en la ficha de producto.

En el caso de WooCommerce, por defecto, en cada ficha de producto saldrán productos relacionados. En esta zona saldrán dos secciones:

  • Sección aleatoria: Se muestran al azar productos de la misma categoría o categorías de ese producto. Esta zona se llama en la ficha productos relacionados.
  • Sección manual: Al editar cada producto en la zona Productos Relacionados de los datos del producto. En ventas dirigidas podemos poner los productos que más nos interesan. Esta zona se llama en la ficha también te recomendamos.

En este tutorial, vamos a ver cómo eliminarlos o dejar de mostrar los productos relacionados a los usuarios de varias formas. Esto nos puede venir bien en tiendas pequeñas con pocos productos, bajar la carga de cada ficha de producto o bien porque los queremos mostrar de otra forma.

AVISO: Antes de hacer cualquier cambio, asegúrate de tener una copia de seguridad de WordPress.

Quitar productos relacionados en WooCommerce por código

Es la mejor forma de quitar los productos relacionados en WooCommerce, por rendimiento de carga y buenas prácticas. Tenemos que añadir el siguiente código al final de nuestro fichero functions.php de nuestro Child Theme (tema hijo en WordPress) o bien en un plugin que tengamos para añadir códigos en php como Code Snippets.


/**
* Quitar productos relacionados en WooCommerce
*/
remove_action( 'woocommerce_after_single_product_summary', 'woocommerce_output_related_products', 20 );

En este caso, no se mostrará visualmente al cliente, ni en el propio código de la ficha de producto. Es la opción que recomiendan también en WooCommerce.
 

Quitar productos relacionados por CSS

 
Otra opción es dejar de mostrar los productos relacionados al cliente, pero se seguirá cargando el código. Esto lo podemos hacer mediante CSS añadiendo el siguiente código en Apariencia > Personalizar > CSS adicional en WordPress.

/* Quitar productos relacionados*/

section.related.products {
display: none;
}

Este código puede ser que no funcione con algunas plantillas de WooCommerce que hayan cambiado esta parte. En este caso, recomendamos poneros en contacto con el desarrollador de la plantilla o bien contratar a un profesional.
 

Quitar productos relacionados en WooCommerce mediante plugin

 
Esta es la opción más sencilla si no queremos meternos en código para quitar productos relacionados en WooCommerce. En este caso usaremos uno del repositorio oficial de WordPress: NS Remove Related Products for WooCommerce. Es tan sencillo como instalarlo y activarlo.

plugin quitar productos relacionados woocommerce

Podrás ver que los productos relacionados ya no aparecerán en ningún artículo de tu WooCommerce.

Avisarte, de que este método no es el más óptimo para quitarlos. Puesto que pesa más la web con este método y no los elimina del código de la página. Solo los oculta.
 

Quitar productos relacionados de forma condicional en WooCommerce

 
En este caso es para ocasiones en las que queramos quitarlos solo de un producto o productos en concreto. En este caso la mejor opción es activarlo o desactivarlo desde la propia edición del producto, como se muestra en la imagen:

configurar plugin quitar productos relacionados woocommerce

Para esto tenemos que añadir el siguiente código php:


add_action( 'woocommerce_product_options_general_product_data', 'add_related_checkbox_products' );

function add_related_checkbox_products() {
woocommerce_wp_checkbox( array(
'id' => 'hide_related',
'class' => '',
'label' => 'Quitar los productos relacionados de este producto'
));
}

add_action( 'save_post_product', 'save_related_checkbox_products' );

function save_related_checkbox_products( $product_id ) {
global $pagenow, $typenow;
if ( 'post.php' !== $pagenow || 'product' !== $typenow ) return;
if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) return;
if ( isset( $_POST['hide_related'] ) ) {
update_post_meta( $product_id, 'hide_related', $_POST['hide_related'] );
} else delete_post_meta( $product_id, 'hide_related' );
}

add_action( 'woocommerce_after_single_product_summary', 'hide_related_checkbox_products', 1 );

function hide_related_checkbox_products() {
global $product;
if ( ! empty ( get_post_meta( $product->get_id(), 'hide_related', true ) ) ) {
remove_action( 'woocommerce_after_single_product_summary', 'woocommerce_output_related_products', 20 );
}
}

Con esto conseguiremos a nuestro gusto quitar los productos relacionados de los productos que queramos.

 

Videotutorial

 

¿Te ha resultado útil este artículo?

Promo abril