WooCommerce: Productos vistos recientemente (código corto)

Actualmente, puede usar un widget para que el usuario vea la lista de productos que vio recientemente. Esto es genial y, tarde o temprano, también se convertirá en un bloque de Gutenberg, creo.

Pero por ahora, creemos nuestro propio código abreviado... y aprovechemos el código abreviado [de productos] existente y aprendamos cómo podemos "pasarle" ID de productos sin la necesidad de reinventar la rueda.

Este fragmento le enseña dónde se almacenan los productos vistos recientemente (spoiler: en una cookie) y también cómo usar un código abreviado existente... dentro de un nuevo código abreviado. ¡Disfrutar!

Sección "Vistos recientemente" después de usar mi nuevo código abreviado de WooCommerce [recently_viewed_products]

Fragmento de PHP: cree un código corto [recently_viewed_products]

Nota: si no ve productos recientes, es porque aún necesita tener activo un widget de Productos vistos recientemente. Afortunadamente, hay una solución si no necesita el widget: https://businessbloomer.com/woocommerce-recently-viewed-products-shortcode/#comment-246536

/**
 * @snippet       [recently_viewed_products] Shortcode - WooCommerce
 * @how-to        Get CustomizeWoo.com FREE
 * @author        Rodolfo Melogli
 * @compatible    WooCommerce 5.1
 * @donate $9     https://businessbloomer.com/bloomer-armada/
 */
 
add_shortcode( 'recently_viewed_products', 'bbloomer_recently_viewed_shortcode' );
 
function bbloomer_recently_viewed_shortcode() {
 
   $viewed_products = ! empty( $_COOKIE['woocommerce_recently_viewed'] ) ? (array) explode( '|', wp_unslash( $_COOKIE['woocommerce_recently_viewed'] ) ) : array();
   $viewed_products = array_reverse( array_filter( array_map( 'absint', $viewed_products ) ) );
 
   if ( empty( $viewed_products ) ) return;
    
   $title = '<h3>Recently Viewed Products</h3>';
   $product_ids = implode( ",", $viewed_products );
 
   return $title . do_shortcode("[products ids='$product_ids']");
   
}

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Subir