Woocommerce在结帐时处理订单之前获取订单中的项目

Woocommerce在结帐时处理订单之前获取订单中的项目,woocommerce,hook-woocommerce,woocommerce-bookings,Woocommerce,Hook Woocommerce,Woocommerce Bookings,我正在WordPress和我的其他网站之间实现同步功能。在结帐期间处理订单之前,我想将订单同步到我的其他站点。我也需要一个同步的项目,但我不知道这个方法使用什么钩子 我尝试使用woocommerce\u checkout\u order\u processed订单已经处理并保存在数据库中。我想要一个钩子,将只提供我一些有关订单的信息,如预订,项目和订单数据,然后才被保存在数据库中。我需要这个,因为如果在同步过程中出现一些错误,我可以取消订单,并且不会保存在WordPress数据库中 我尝试了wo

我正在WordPress和我的其他网站之间实现同步功能。在结帐期间处理订单之前,我想将订单同步到我的其他站点。我也需要一个同步的项目,但我不知道这个方法使用什么钩子

我尝试使用
woocommerce\u checkout\u order\u processed
订单已经处理并保存在数据库中。我想要一个钩子,将只提供我一些有关订单的信息,如预订,项目和订单数据,然后才被保存在数据库中。我需要这个,因为如果在同步过程中出现一些错误,我可以取消订单,并且不会保存在WordPress数据库中

我尝试了
woocommerce\u checkout\u过程
hook。问题是我无法使用此代码获取项目

function syncOrderAsEstimates($order_id) {
    $order = wc_get_order($order_id);
    $order->getItems(); // returns empty
}
add_action('woocommerce_checkout_process', 'syncOrderAsEstimates', 10, 1);

@Yves尝试使用此操作挂钩(/includes/class wc checkout.php):


谢谢

谢谢,伙计,但它不包括订购物品。我希望这些项目也能够同步。它只给我有关发货和账单信息的信息。你可以从购物车中获取物品:如果(!WC()->cart->is_empty()){$cart_items=WC()->cart->get_cart()}哦,对不起,$order返回空的只有$data有值;编辑,以及,高兴地帮助可能是我将只使用woocommerce\u结帐\u订单处理或woocommerce\u结帐\u过程。如果同步过程中发生任何事情,我将取消订单。谢谢你,伙计。。
/**
 * Action hook to adjust order before save.
 *
 * @since 3.0.0
 */
do_action( 'woocommerce_checkout_create_order', $order, $data );