小编mat*_*tin的帖子

注册后如何将 WooCommerce 访客订单链接到客户帐户

我们的场景是:

访客用户无需注册即可进入网站并下一个或多个订单。一段时间后,他决定在该网站上注册。

现在注册后如何将客人订单链接到客户帐户?

我使用以下代码,但此代码仅适用于已经注册但购买时未登录的用户。有什么建议吗?

//assign user in guest order
add_action( 'woocommerce_new_order', 'action_woocommerce_new_order', 10, 1 );
function action_woocommerce_new_order( $order_id ) {
    $order = new WC_Order($order_id);
    $user = $order->get_user();
    
    if( !$user ){
        //guest order
        $userdata = get_user_by( 'email', $order->get_billing_email() );
        if(isset( $userdata->ID )){
            //registered
            update_post_meta($order_id, '_customer_user', $userdata->ID );
        }else{
            //Guest
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

wordpress orders woocommerce hook-woocommerce

4
推荐指数
1
解决办法
2353
查看次数

标签 统计

hook-woocommerce ×1

orders ×1

woocommerce ×1

wordpress ×1