Revista Blog

Woocommerce: eliminar link a producto individual

Por Juan J. Rodríguez @JurogaJJR
Woocommerce: eliminar link a producto individual

A veces se nos presentan retos extraños. En esta ocasión nos pidieron eliminar el enlace a producto individual que hay en las páginas de productos. Es decir, querían mostrar catálogo de productos y no querían mostrar producto individual.

Entre las diferentes soluciones encontramos una bastante sencilla. Se trataría de añadir el siguiente código a la página functions.php de nuestro tema hijo o a nuestro plugin de customizaciones.

// Remove links to the product details pages from the product listing page of a WooCommerce store
remove_action( 'woocommerce_before_shop_loop_item', 'woocommerce_template_loop_product_link_open', 10 );
remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_product_link_close', 5 );

Por otro lado puede ser que solo nos interese eliminar los links que enlazan las páginas de la tienda a productos individuales en categorías específicas. Para este caso recurriríamos a lo siguiente:

// Remove links to the product details pages from the product listing page of a WooCommerce store (only a specific category)
if ( is_product() & is_product_category( array('category-slug') ) ) {
    remove_action( 'woocommerce_before_shop_loop_item', 'woocommerce_template_loop_product_link_open', 10 );
    remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_product_link_close', 5 );
}

Un apunte:

Si estos códigos no funcionaran es posible que sea por los hooks o las prioridades. Puedes revisar los códigos en
wp_content/themes/your-theme-name/woocommerce/content-product.php.

Y esto es todo. Recordad haced copia de seguridad antes de realizar pruebas o trabajos no controlados.


Volver a la Portada de Logo Paperblog