Un usuario preguntó 👇
Hola,
En la página de archivo del producto, quiero mostrar el logotipo del proveedor en cada producto. Estoy usando el siguiente fragmento, que funciona perfectamente:
// LOGO BEFORE SOLD BY TEXT
add_filter('wcmp_sold_by_text', 'show_image_callback', 10, 2);
function show_image_callback($text, $post_id) {
$vendor = get_wcmp_product_vendors($post_id);
$img_id = $vendor->image;
$image = '<img src="'.wp_get_attachment_url( $img_id ).'" style="height:100%!important;"/>';
$new_text = $text . " " . $image;
return $new_text;
}
Sin embargo, esto muestra el logotipo y el texto «Vendido a: vendedor». Quiero desactivar el texto «Vendido por: Proveedor» y mostrar solo el logotipo. ¿Cómo puedo hacer esto?
(@dualcube)
Hace 2 años, 1 mes
@ jeanineh93, este gancho agotado siempre aparecerá con texto.
Por lo tanto, debe usar este gancho woocommerce_after_shop_loop_item_title
y agregue su código.
Además, desactive la opción «Habilitar» Vendido con «a través de WCMp >> Configuración >> General.
Háganos saber si tiene alguna otra pregunta.
Lanzador de hilos
(@ jeanineh93)
Hace 2 años, 1 mes
Hola, gracias por tu respuesta. Lo probé con el siguiente código:
// LOGO BEFORE SOLD BY TEXT
function show_image_callback($text, $post_id) {
$vendor = get_wcmp_product_vendors($post_id);
$img_id = $vendor->image;
$image = '<img src="'.wp_get_attachment_url( $img_id ).'" style="width:100%!important;max-height:60px!important;object-fit:contain!important;"/>';
$new_text = $text . " " . $image;
return $new_text;
}
add_action('woocommerce_before_shop_loop_item_title', 'show_image_callback', 10, 2);
Sin embargo, esta imagen no se muestra en absoluto. He desactivado la opción «Vendido con» en la configuración de WCMp.
¿Hay algún problema con el código?
(@itzmekhokan)
Hace 2 años, 1 mes
@ jeanineh93 Está llamando a un gancho de woocommerce con nuestro parámetro Hook proporcionado, que no es válido para un gancho de woocommerce. Aquí está el siguiente conjunto de códigos:
// LOGO BEFORE SOLD BY TEXT
function show_image_callback() {
global $product;
if( $product ) {
$vendor = get_wcmp_product_vendors( $product->get_id() );
if( $vendor ) {
// $vendor->get_image() function returns default vendor logo url
$image = '<img src="' . $vendor->get_image() . '" style="width:100%!important;max-height:60px!important;object-fit:contain!important;"/>';
echo $image;
}
}
}
add_action( 'woocommerce_before_shop_loop_item_title', 'show_image_callback' );
Lanzador de hilos
(@ jeanineh93)
Hace 2 años
Eso es genial, ahora está funcionando perfectamente. Sin embargo, y lamento la pregunta, ¿es posible vincular la imagen del logotipo a la página del vendedor? Así como el texto «vendido por» estaba vinculado a la página del vendedor.
(@itzmekhokan)
Hace 2 años
@ jeanineh93 solo reemplaza la línea de código de arriba $image = '<img src="' . $vendor->get_image() . '" style="width:100%!important;max-height:60px!important;object-fit:contain!important;"/>';
le $image = '<a href="' . $vendor->permalink . '"><img src="' . $vendor->get_image() . '" style="width:100%!important;max-height:60px!important;object-fit:contain!important;"/></a>';
¿Solucionó tu problema??
0 / 0