Soporte » WordPress Avanzado » Eliminar Imagen destacada producto de la galería

  • Resuelto miguegongon

    (@miguegongon)


    Buenas a todos, a ver si algún profesional de wordpress me puede echar una mano porque ya llevo mis horas intentando solucionar el problema. Pues bien, lo que estoy intentando es eliminar tanto la imagen principal como la primera imagen de la galería de un producto para que no se muestre en la página del mismo.

    Para realizar el proceso, cree una función en mi fichero «functions.php» y usé un filtro:

    add_filter('woocommerce_single_product_image_thumbnail_html', 'remove_featured_image', 10, 2);
    	
    	function remove_featured_image($html, $attachment_id ) {
        global $post, $product;
    
        $featured_image = get_post_thumbnail_id( $post->ID );
    	$attachment_gallery_ids = $product->get_gallery_image_ids();
    	//get_gallery_attachment_ids();
    	
    	$firstimagengallery = $attachment_gallery_ids[0];
    
        if ( $attachment_id == $featured_image || $attachment_id == $firstimagengallery ){
            $html = '';			
    	}
    			
        return $html;
    	}

    De esta manera me elimina tanto la imagen destacada como la primera imagen de la galería principal que muestro en la página del producto, pero en las miniaturas que aparecen para desplazarse entre las imágenes del producto, me aparece la imagen destacada. No entiendo como de la vista principal de las imágenes del producto si me la descarta pero después en las miniaturas no. Si alguien pudiera echarme una mano se lo agradecería. Gracias!!

    • Este debate fue modificado hace 7 meses por  miguegongon.
Viendo 3 respuestas - 1 de 3 (de 3 total)
  • kallookoo

    (@kallookoo)

    Hola,

    Personalmente yo crearia una template o templates para ‘product-image.php’ y ‘product-thumbnails.php’ asi te evitas que el WooCommerce haga las queries necesarias, etc para saber, mostrar las images.

    O directamente modifica las id o ids de las images del producto, puedes ver mas info aqui. No lo recomiendo, si no estas famializado, ya que usarlo incorrectamente podrias tener problemas.

    O directamente elimina los hooks que se lanzan para mostrarlas, ojo no mostraria ninguna.

    
    remove_action( 'woocommerce_before_single_product_summary', 'woocommerce_show_product_images' );
    remove_action( 'woocommerce_product_thumbnails', 'woocommerce_show_product_thumbnails' );
    
    miguegongon

    (@miguegongon)

    Buenas @kallookoo,

    La cosa es que estoy usando una plantilla y me sería mas complicado por el tema del diseño. Le echaré un ojo al enlace que me pasaste a ver si puedo sacar algo, porque es que no se como demonios mete la imagen destacada como la primera de las miniaturas y eso que en el array de imágenes de galería si que me está eliminando la primera correctamente tanto de la vista principal como de la galería de miniaturas. Respecto al tema de los hooks no me es viable ya que la intención es que aparezcan. Seguiremos intentándolo a ver sino a ver que buscar otra alternativa. Gracias @kallookoo !!

    miguegongon

    (@miguegongon)

    Solucionado!! En el fichero «woocommerce.php» en «/functions» encontré el código que incluía la imagen destacada entre las miniaturas, lo comenté y listo.

    /*if ( $image_thumb ) {
    
    					printf(
    						'<div class="woocommerce-product-thumb__image">%s</div>',
    						$image_thumb
    					);
    
    				}*/
    • Esta respuesta fue modificada hace 7 meses por  miguegongon.
    • Esta respuesta fue modificada hace 7 meses por  miguegongon.
Viendo 3 respuestas - 1 de 3 (de 3 total)
  • El debate ‘Eliminar Imagen destacada producto de la galería’ está cerrado a nuevas respuestas.