Get cart item name, quantity all details woocommerce
Try this :
<?php global $woocommerce; $items = $woocommerce->cart->get_cart(); foreach($items as $item => $values) { $_product = wc_get_product( $values['data']->get_id()); echo "<b>".$_product->get_title().'</b> <br> Quantity: '.$values['quantity'].'<br>'; $price = get_post_meta($values['product_id'] , '_price', true); echo " Price: ".$price."<br>"; } ?>
To get Product Image and Regular & Sale Price:
<?php global $woocommerce; $items = $woocommerce->cart->get_cart(); foreach($items as $item => $values) { $_product = wc_get_product( $values['data']->get_id() ); //product image $getProductDetail = wc_get_product( $values['product_id'] ); echo $getProductDetail->get_image(); // accepts 2 arguments ( size, attr ) echo "<b>".$_product->get_title() .'</b> <br> Quantity: '.$values['quantity'].'<br>'; $price = get_post_meta($values['product_id'] , '_price', true); echo " Price: ".$price."<br>"; /*Regular Price and Sale Price*/ echo "Regular Price: ".get_post_meta($values['product_id'] , '_regular_price', true)."<br>"; echo "Sale Price: ".get_post_meta($values['product_id'] , '_sale_price', true)."<br>"; }?>
Since WooCommerce 2.1 (2014) you should use the WC function instead of the global. You can also call more appropriate functions:
foreach ( WC()->cart->get_cart() as $cart_item ) { $item_name = $cart_item['data']->get_title(); $quantity = $cart_item['quantity']; $price = $cart_item['data']->get_price(); ...
This will not only be clean code, but it will be better than accessing the post_meta directly because it will apply filters if necessary.
This will show only Cart Items Count.
global $woocommerce; echo $woocommerce->cart->cart_contents_count;