如何在Wordpress中获取用户的订单?

如何在Wordpress中获取用户的订单?,wordpress,Wordpress,Wordpress版本5.3.2 Woocommerce版本3.8.1 实现向用户显示其采购订单以及订单项目(订单中的产品) 我尝试过的 锯 还是不能解决我的问题 我面临的错误 致命错误:未捕获错误:在上调用成员函数get_id() 排列 代码 //got the user $user = wp_get_current_user(); //In my case $user->ID returns 1 $args = array( 'customer_id' => $user

Wordpress版本5.3.2 Woocommerce版本3.8.1

实现向用户显示其采购订单以及订单项目(订单中的产品)

我尝试过的

还是不能解决我的问题

我面临的错误

致命错误:未捕获错误:在上调用成员函数get_id() 排列

代码

//got the user
$user = wp_get_current_user();
//In my case $user->ID returns 1

$args = array(
    'customer_id' => $user->ID,
    'status' => 'confirmed',
);
//Since i only want the confirmed orders
$order= wc_get_orders( $args );
$order_id  = $order->get_id();
从中可以看到,
wc\u get\u orders
返回一个
数组
stdClass
。错误消息告诉您不能调用
数组
get\u id
,因此您有一个
数组
。因为您正在搜索的客户有多个已确认订单。解决方案:

//...
$orders = wc_get_orders( $args );
if (!is_array($orders)) $orders = [$orders];
//...

在被接受的解决方案之后,我更加挣扎了。 最初,我得到了一个完整的订单数组,在遍历该数组之后,我找到了我要查找的内容

    $user = wp_get_current_user();
    $args = array(
    //'customer_id' => $user->ID
    'customer_id' => 6
);
    $orders = wc_get_orders($args);
    foreach($orders as $order){
        $order_id  = $order->get_id();        
        echo $order_id . "<br/>";
    }
$user=wp\u get\u current\u user();
$args=数组(
//'customer_id'=>$user->id
“客户id”=>6
);
$orders=wc\u get\u订单($args);
foreach($orders作为$order){
$order\u id=$order->get\u id();
echo$order_id.“
”; }
此foreach允许访问我所需的订单id