我有购物车数量,但我需要购物车中的产品数量。我不想显示总数量,但想要在购物车中显示总产品/订单。
请帮忙!
答案 0 :(得分:4)
我在客户端项目@ jivith.com
中遇到了同样的问题但我解决了......
在minicart / cart功能中使用替换购物车中的总产品数量 - 而不是其数量项目
$_cartQty = count( WC()->cart->get_cart() );
**or** use sizeof (WC()->cart->get_cart());
我在购物车中获得了唯一的总产品数量,而不是数量的项目...
我的演示代码:
<span class="cart-items"><?php echo ($minicart_type == 'minicart-inline')
? '<span class="mobile-hide">' . sprintf( _n( '%d item', '%d items', $_cartQty, 'porto' ), $_cartQty ) . '</span><span class="mobile-show">' . $_cartQty . '</span>'
: (($_cartQty > 0) ? $_cartQty : '0'); ?></span>
答案 1 :(得分:2)
您可以使用WC()->cart->cart_contents
获取唯一产品的总数。这包含一系列购物车项目。您可以使用array_unique()函数来避免重复ID。最后,您可以使用array_count来获取唯一产品的数量。
答案 2 :(得分:0)
我的事情以下代码将帮助您。我有一个问题,我想在购物车选项中显示总产品数量而非数量。
如果更改class-wc-cart.php
文件,只需将php函数array_sum()
更改为count()
即可。
public function get_cart_contents_count() {
return apply_filters( 'woocommerce_cart_contents_count', count( wp_list_pluck( $this->get_cart(), 'quantity' )) );
}