获取woocommerce订单插件列表

时间:2016-03-23 08:19:51

标签: php wordpress plugins

我正在为Woocommerce制作一个插件。

现在,我有点卡在某事上,这就是如何获得所有订单。

到目前为止,这是我的代码:

    global $woocommerce;
    global $post;
    $order = new WC_Order(102249);
    $_order =   $order->get_items();
    foreach($_order as $order_product_detail){
        echo "<b>Product ID:</b> ".$order_product_detail['product_id']."<br>";
        echo "<b>Product Name:</b> ".$order_product_detail['name']."<br><br>";
}

这很有效。但我需要所有订单。现在我只得到订单号。我试过用$order = new WC_Order($post->ID);
但这给了我一个通知:Notice: Trying to get property of non-object
我认为这必须这样做,WordPress还没有加载global $post 那么我怎样才能获得所有订单。我怎么能等待WordPress完全加载?

我看过WordPress和Woocommerce的手抄本,不幸的是,这对我没有帮助。

1 个答案:

答案 0 :(得分:1)

function wc_get_customer_orders() {

    // Get all customer orders
    $customer_orders = get_posts( array(
        'numberposts' => -1,
        'meta_key'    => '_customer_user',

        'post_type'   => wc_get_order_types(),
        'post_status' => array_keys( wc_get_order_statuses() ),
    ) );

    $customer = wp_get_current_user();



    print_r($customer_orders);



}
add_action( 'woocommerce_before_my_account', 'wc_get_customer_orders' );

试试这个