WooCommerce: Mostrar «Agotado» en la página de la tienda

Aquí hay otro fragmento simple que puede ayudar fácilmente a la experiencia del usuario y asegurarse de que se muestre una insignia de «agotado» en cada producto agotado en las páginas de categoría y tienda.

¡No todos los temas permiten esto, por lo que puede usar el fragmento a continuación para que esto suceda!

Mostrar insignia de WooCommerce agotado
Mostrar insignia de WooCommerce agotado

Fragmento de PHP 1: Mostrar «Agotado» en las páginas de Tienda y Archivo si no tiene una insignia existente de «Agotado» – WooCommerce

/**
 * @snippet       Display "Sold Out" on Loop Pages - WooCommerce
 * @how-to        Get CustomizeWoo.com FREE
 * @author        Rodolfo Melogli
 * @testedwith    WooCommerce 4.6
 * @donate $9     https://businessbloomer.com/bloomer-armada/
 */
 
add_action( 'woocommerce_before_shop_loop_item_title', 'bbloomer_display_sold_out_loop_woocommerce' );
 
function bbloomer_display_sold_out_loop_woocommerce() {
    global $product;
    if ( ! $product->is_in_stock() ) {
        echo '<span class="soldout">Sold Out</span>';
    }
}

Y un poco de CSS:

/* CSS */
 
.soldout {
padding: 3px 8px;
text-align: center;
background: #222;
color: white;
font-weight: bold;
position: absolute;
top: 6px;
right: 6px;
font-size: 12px;
}

Fragmento de PHP 2: Cambie «Agotado» a «Agotado» en las páginas de Tienda y Archivo si tiene una insignia existente de «Agotado» – WooCommerce

Existe la posibilidad de que su tema o un complemento personalizado ya estén agregando una insignia de «Agotado» en cada producto agotado en las páginas de bucle / categoría / tienda.

En este caso, su única opción es «traducir» la cadena:

/**
 * @snippet       "Out of Stock" to "Sold Out" on Loop Pages - WooCommerce
 * @how-to        Get CustomizeWoo.com FREE
 * @author        Rodolfo Melogli
 * @testedwith    WooCommerce 4.6
 * @donate $9     https://businessbloomer.com/bloomer-armada/
 */
 
add_filter( 'gettext', 'bbloomer_translate_out_stock_string', 9999, 3 );
   
function bbloomer_translate_out_stock_string( $translated, $untranslated, $domain ) {
   if ( ! is_admin() ) {
      switch ( $translated ) {
         case 'Out of Stock':
            $translated = 'Sold Out';
            break;
      }
   }  
   return $translated;
}

No codifico, ¿hay un complemento confiable para eso?

Como a muchos lectores les encantaría codificar pero no se sienten 100% seguros con él, decidí buscar un complemento confiable que logre el mismo (o incluso mejor) resultado.

En este caso, recomiendo el complemento YITH WooCommerce Badge Management . Además de mostrar insignias de texto personalizadas (versión gratuita), también puede crear CSS, imágenes e insignias avanzadas, asignar insignias de productos a productos y/o categorías específicos, elegir la posición de la insignia y mucho más.

Pero en caso de que desee codificar, siga leyendo

Deja un comentario