【发布时间】:2018-05-11 05:18:26
【问题描述】:
我想出了一种方法来做到这一点,但我发现我的查询花费的时间太长了,而且 Woocmmerce 中的订单越多,我们添加的变体越多,查询花费的时间就越长...
我希望在 WC 或 WP 中有一种方法可以仅查询订单的变体 ID,但可惜我还没有找到。我需要按变化进行销售报告。
//get number of orders per variation_id
function getOrdersfromVariation($variation_id){
$numberOfOrders = 0;
ip_write_log("getOrdersfromVariation varid: $variation_id");
// rewrite with wc_get_orders
$args = array(
'status' => array( 'processing', 'completed'),
'limit' => -1,
);
$orders = wc_get_orders( $args );
if(isset($orders)){
//TODO: Get order count - $total_orders = $orders->total;
foreach ($orders as $order){
foreach ($order->get_items() as $key => $lineItem) {
$item_data = $lineItem->get_data();
if ($item_data['variation_id'] == $variation_id) {
$numberOfOrders++;
}
}
}
if(isset($numberOfOrders)){
return $numberOfOrders;
}
}
return;
}
【问题讨论】:
标签: php sql wordpress woocommerce orders