【发布时间】:2019-01-22 13:14:56
【问题描述】:
对于下一个订单并且该订单包含 3 个产品,我需要获取格式如下的数据结构:
[items] => Array
(
[0] => Array
(
[sku] => Product 1 sku
[qty] => Product 1 qty
[price] => Product 1 price
[weight] =>
[discount] =>
[line_ref] =>
)
[1] => Array
(
[sku] => Product 2 sku
[qty] => Product 2 qty
)
[2] => Array
(
[sku] => Product 3 sku
[qty] => Product 3 qty
)
)
这是我的代码:
$order = new WC_Order( $order_id );
// Get the order ID
$order_id = $order->get_id();
// Get data from Items
foreach ( $order->get_items() as $item_key => $item_values ) {
$product_id = $item_values->get_product_id(); // the Product id
$product = $item_values->get_product(); // the WC_Product object
$item_data = $item_values->get_data();
$item = array(array(
'sku' => $product->get_sku(),
'qty' => $item_data['quantity'],
'price' => $product->get_price(),
'weight' => '',
'discount' => '',
'line_ref' => ''
),
array(
'sku' => $product->get_sku(),
'qty' => $item_data['quantity'],
)
);
}
print_r($item);
我怎样才能做到这一点?
我正在获取订单中第一个产品的唯一数据。 如果我这样做 print_r($item);在 foreach 循环中,它会根据订单中的产品数量重复整个数据。
【问题讨论】:
标签: php wordpress woocommerce orders