首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WooCommerce新订单操作-获取订单信息

WooCommerce新订单操作-获取订单信息
EN

Stack Overflow用户
提问于 2016-06-17 03:47:25
回答 3查看 27K关注 0票数 12

我正在使用它在我的functions.php文件中创建一个新函数

代码语言:javascript
复制
add_action( 'woocommerce_new_order', 'create_invoice_for_wc_order',  1, 1  );
function create_invoice_for_wc_order() {

}

它是在下新订单时执行一些自定义代码,如何在我的函数中获取订单信息(已订购产品等

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-06-17 03:55:41

您可以使用$order_id作为woocommerce_new_order回调的参数,并从$order_id获取订单详细信息。

示例:

代码语言:javascript
复制
// define the woocommerce_new_order callback 
function create_invoice_for_wc_order( $order_id ) { 
    // get order details data...
    $order = new WC_Order( $order_id );
    var_dump($order);
}; 

参考文献:

http://hookr.io/actions/woocommerce_new_order/

https://docs.woothemes.com/wc-apidocs/class-WC_Order.html

票数 21
EN

Stack Overflow用户

发布于 2016-06-17 03:54:15

woocommerce_new_order包含一个$order_id参数。您可以在回调中使用它:

代码语言:javascript
复制
add_action( 'woocommerce_new_order', 'create_invoice_for_wc_order',  1, 1  );
function create_invoice_for_wc_order( $order_id ) {
    $order = new WC_Order( $order_id );
    $items = $order->get_items();
    // etc...
}
票数 8
EN

Stack Overflow用户

发布于 2021-03-26 16:27:24

这里的所有答案都是正确的,但如果您需要行项目,上面的方法将不起作用,因为此时无法使用新的WC_Order获取行项目。

钩子现在有了第二个可以工作的$order参数。

代码语言:javascript
复制
add_action( 'woocommerce_new_order', 'create_invoice_for_wc_order',  1, 2  );
function create_invoice_for_wc_order( $order_id, $order ) {
    $items = $order->get_items();
    // etc...
}
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37868183

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档