【发布时间】:2018-11-24 03:44:24
【问题描述】:
我试图为每个项目变体获得正确的价格,但它似乎只是获得该产品变体的第一个价格。不知道如何解决这个问题。
代码:
$query = new WC_Order_Query( array(
'status' => 'on-hold',
'orderby' => 'date',
'order' => 'DESC',
'return' => 'ids',
) );
$order_ids = $query->get_orders();
foreach( $order_ids as $order_id ) {
$order = new WC_Order($order_id);
foreach ($order->get_items() as $item_id => $item_obj) {
$_product = wc_get_product($item_obj['product_id']);
$product = new WC_Product_Variable($item_obj['product_id']);
$product_variations = $product->get_available_variations();
$variation_product_id = $product_variations [0]['variation_id'];
$variation_product = new WC_Product_Variation( $variation_product_id );
$t_dy = $variation_product->get_price();
$item_qty = $item_obj['qty'];
$it_total = $item_qty * $t_dy;
$td = wc_update_order_item_meta($item_id, '_line_total', $it_total);
$order->calculate_totals();
$order->save();
}
}
【问题讨论】:
-
您在 $product_variations 中获得了正确的变体 ID 吗?
-
谢谢我仔细检查输出
标签: php wordpress woocommerce hook-woocommerce price