I am using this to create a new function in my functions.php
file
add_action( 'woocommerce_new_order', 'create_invoice_for_wc_order', 1, 1 );
function create_invoice_for_wc_order() {
}
it is to execute some custom code when a new order is placed, how can i get the order information (ordered products etc) inside my function
You can use
$order_id
as a parameter for yourwoocommerce_new_order
callback and get the order details from the$order_id
.Example:
References:
http://hookr.io/actions/woocommerce_new_order/
https://docs.woothemes.com/wc-apidocs/class-WC_Order.html
All answers here are correct but if you need the line items the above wont work since line items can’t be fetched with new WC_Order at that time.
The hook now has a second
$order
parameter that will work.woocommerce_new_order
includes an$order_id
parameter. You can use it in your callback:If you want to get only the order details, You can use ‘woocommerce_new_order’ hook and $order_id as parameter
But if You want to get order items You should use ‘woocommerce_checkout_order_processed’