我有问题,在“checkout/onepage/success”结帐后使用“order id”获取用户信息,例如:
$orderInfo = Mage::getModel('sales/order')->load($lastOrderId);
$customerId = $orderInfo->getCustomerId();
来自在结帐页面上注册然后通过 PayPal 付款的用户的订单成为“访客订单”,当然在“模型('销售/订单')”中客户 ID 为空,并且在数据库中此交易和订单看起来像由 PayPal 帐户而非 Magento 帐户发出的“访客订单”。另一个支付系统在结账页面上注册时工作正常,结账后我可以获得客户 ID。 问题是,如何通过结帐页面从 Magento 网站的注册用户那里获取“用户 ID”并通过 PayPal 购买东西?
最佳答案
您可以从客户模型通过电子邮件加载用户
Mage::getModel('customer/customer')->loadByEmail($orderInfo->getBillingAddress()->getEmail());
更可行的方法是监听 save_order_after 事件并检测您是否正在处理 paypal 结账并立即将客户添加到订单中
关于php - Magento - 在结帐页面上注册,然后通过 PayPal 付款,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5350358/