Pasar el ID de pedido de WooCommerce a un gancho

Tengo un problema recurrente en mis personalizaciones de WooCommerce: cómo obtener el ID del pedido actual dentro de una función.

Algunos hooks pueden pasarlo con $ order_id, pero en el contexto de la página de una cuenta de usuario para un pedido específico, por ejemplo, el siguiente no funciona.

El problema es que $order_id está vacío, por supuesto. ¿Pero cómo pasaría el ID de la orden a esta función?

 add_action( 'woocommerce_order_items_table', 'xcsn_woocommerce_order_items_table'); function xcsn_woocommerce_order_items_table ( $order_id ) { $order = new WC_Order( $order_id ); echo 'The order ID is: ' . $order->get_order_number(); // or echo '
The order ID is: ' . $order->id; }

Intenté esto, pero devuelve el número de identificación de usuario, no el pedido:

 global $woocommerce; $order = new WC_Order($post->ID); echo 'The Order ID: ' . $order->get_order_number(); 

¿Alguna sugerencia?

Esto resuelve el problema particular anterior (aunque no la pregunta general):

 add_action( 'woocommerce_order_items_table', 'xcsn_woocommerce_order_items_table'); function xcsn_woocommerce_order_items_table ( $order ) { echo $order->id; //This is the order id, even in the user Accounts>Order page } 
 add_action( 'woocommerce_order_items_table', 'xcsn_woocommerce_order_items_table',10,2); function xcsn_woocommerce_order_items_table ( $order_id ) { $order = new WC_Order( $order_id ); echo 'The order ID is: ' . $order->get_order_number(); // or echo '
The order ID is: ' . $order_id; }

compruebe que necesita agregar 10,2 en la acción, que devuelve la ID del pedido después de la entrega exitosa del pedido, sin esto la función se ejecutará antes de enviar el pedido, por lo que el ID del pedido puede ser 0 o null