Php 将订单ID传递到钩子中

Php 将订单ID传递到钩子中,php,wordpress,woocommerce,Php,Wordpress,Woocommerce,我的WooCommerce定制中经常遇到一个问题:如何在函数中获取当前订单id 一些钩子可以使用$order\u id传递它,但是在特定订单的用户帐户页面的上下文中,例如,下面的选项不起作用 问题是,$order\u id当然是空的。但是我如何将订单的ID传递给这个函数呢 add_action( 'woocommerce_order_items_table', 'xcsn_woocommerce_order_items_table'); function xcsn_woocommerce_ord

我的WooCommerce定制中经常遇到一个问题:如何在函数中获取当前订单id

一些钩子可以使用$order\u id传递它,但是在特定订单的用户帐户页面的上下文中,例如,下面的选项不起作用

问题是,
$order\u id
当然是空的。但是我如何将订单的ID传递给这个函数呢

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 '<br>The order ID is: ' . $order->id;

}

有什么建议吗?

这解决了上述特定问题(尽管不是一般问题):

add_action('woocmerce_order_items_table','xcsn_woocmerce_order_items_table',10,2);
函数xcsn\u商业\u订单\u项目\u表($order\u id){
$order=新WC\U订单($order\U id);
echo“订单ID为:”。$order->get_order_number();
//或
回声'
订单ID为:'.$order\U ID; }

选中此项您需要在操作上添加10,2,它在成功提交订单后返回订单id,没有此项,函数将在提交订单之前运行,因此订单id可能
0
null

它不会返回任何内容。?
global $woocommerce;
$order = new WC_Order($post->ID);
echo 'The Order ID: ' . $order->get_order_number();
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 '<br>
    The order ID is: ' . $order_id;

}