Tạo sản phẩm đã xem cho website woocommerce wordpress
Chèn code vào file functions.php của bạn để tạo shortcode sản phẩm đã xem
[recently_viewed_products] -> đây là shortcode sản phẩm đã xem. Bạn coppy và dán vào bất cứ đâu mà bạn muốn.
// sản phẩm đã xem // @snippet [recently_viewed_products] Shortcode - WooCommerce 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_slice($viewed_products, 0, 8); if ( empty( $viewed_products ) ) return; $product_ids = implode( ",", $viewed_products ); return $title . do_shortcode("[products ids='$product_ids']"); } // https://github.com/woocommerce/woocommerce/issues/9724#issuecomment-160618200 function custom_track_product_view() { if ( ! is_singular( 'product' ) ) { return; } global $post; if ( empty( $_COOKIE['woocommerce_recently_viewed'] ) ) $viewed_products = array(); else $viewed_products = (array) explode( '|', $_COOKIE['woocommerce_recently_viewed'] ); if ( ! in_array( $post->ID, $viewed_products ) ) { $viewed_products[] = $post->ID; } if ( sizeof( $viewed_products ) > 15 ) { array_shift( $viewed_products ); } // Store for session only wc_setcookie( 'woocommerce_recently_viewed', implode( '|', $viewed_products ) ); } add_action( 'template_redirect', 'custom_track_product_view', 20 );