Woocommerce:获取订单中的商品总数

时间:2019-09-13 11:21:58

标签: wordpress woocommerce

这看起来很简单,但是已经晚了,我可能已经使事情变得过于复杂了!

我目前正在使用woocommerce_thankyou函数文件中的WP钩子来编译一些数据并将其发送给第三方API。到目前为止,使用标准$order$order_meta values很容易。但是我需要获取订单中的商品总数,而且我看不到在哪里获取。

因此,如果有人订购了2个绿色小部件和3个蓝色小部件,我需要从某个地方拿到5

我缺少明显的东西吗? :-)

2 个答案:

答案 0 :(得分:2)

盘点订单项可以是两种不同的东西:

1)项目总数:

// Get an instance of the WC_Order Object
$order = wc_get_order( $order_id );

$items_count = count( $order->get_items() ); 

// Testing output
echo $items_count;

2)项目总数:

// Get an instance of the WC_Order Object
$order = wc_get_order( $order_id );

$total_quantity = 0; // Initializing

// Loop through order items
foreach ( $order->get_items() as $item ) {
    $total_quantity += $item->get_quantity();
}

// Testing output
echo $total_quantity;

或者您可以使用WC_Order get_item_count()方法执行相同的(请参阅its source code

// Get an instance of the WC_Order Object
$order = wc_get_order( $order_id );

$total_quantity = order->get_item_count();

答案 1 :(得分:1)

使用它来获取订单中的总商品-

$order = wc_get_order( $order_id );
echo $order->get_item_count(); // Will display the total numbers