在 Woocommerce 中按商品 ID 获取购物车商品数量
Get the cart item quantity by item id in Woocommerce
在 WooCommerce 中,我创建了一个迷你购物车,我想要获取当前购物车中可用的商品数量。
因为我试过这个:
$items = $woocommerce->cart->get_cart();
foreach($items as $item => $values) {
$product_id = $values['product_id'];
if ( $product_id == $id ){
$product_qnty = $values['quantity'];
}
break;
}
是否有任何单一函数可以按购物车商品获取购物车商品数量?
可能您应该先在 woocommerce template code cart/mini-cart.php 中查看官方相关代码。
注意:"item ID" 仅在 WC_Orders 项循环中可用,但在 WC_Cart 中不可用,后者是 "Cart item Key"。所以你肯定是在谈论产品 ID。但是如果你查看官方模板的代码 cart/mini_cart 你将需要使用 WC_Product
对象而不是 $product_id
…
因此您始终可以构建自定义函数,例如 (使用 $product
参数,WC_Product 对象),您可以在相应的模板代码或自定义代码中使用:
function get_item_qty( $product ){
foreach( WC()->cart->get_cart() as $cart_item )
// for variable products (product varations)
$product_id = $product->get_parent_id();
if( $product_id == 0 || empty( $product_id ) )
$product_id = $product->get_id();
if ( $product_id == $cart_item['product_id'] ){
return $cart_item['quantity'];
// break;
}
return;
}
代码进入您的活动子主题(或主题)的 function.php 文件或任何插件文件。
USAGE (例子): 这里我们输出$product
[=的数量40=] (WC_Product
对象):
// Output the quantity based on the $product object
echo __('Quantity'). ': ' . get_item_qty( $product );
在 WooCommerce 中,我创建了一个迷你购物车,我想要获取当前购物车中可用的商品数量。
因为我试过这个:
$items = $woocommerce->cart->get_cart();
foreach($items as $item => $values) {
$product_id = $values['product_id'];
if ( $product_id == $id ){
$product_qnty = $values['quantity'];
}
break;
}
是否有任何单一函数可以按购物车商品获取购物车商品数量?
可能您应该先在 woocommerce template code cart/mini-cart.php 中查看官方相关代码。
注意:"item ID" 仅在 WC_Orders 项循环中可用,但在 WC_Cart 中不可用,后者是 "Cart item Key"。所以你肯定是在谈论产品 ID。但是如果你查看官方模板的代码 cart/mini_cart 你将需要使用 WC_Product
对象而不是 $product_id
…
因此您始终可以构建自定义函数,例如 (使用 $product
参数,WC_Product 对象),您可以在相应的模板代码或自定义代码中使用:
function get_item_qty( $product ){
foreach( WC()->cart->get_cart() as $cart_item )
// for variable products (product varations)
$product_id = $product->get_parent_id();
if( $product_id == 0 || empty( $product_id ) )
$product_id = $product->get_id();
if ( $product_id == $cart_item['product_id'] ){
return $cart_item['quantity'];
// break;
}
return;
}
代码进入您的活动子主题(或主题)的 function.php 文件或任何插件文件。
USAGE (例子): 这里我们输出$product
[=的数量40=] (WC_Product
对象):
// Output the quantity based on the $product object
echo __('Quantity'). ': ' . get_item_qty( $product );