2011-03-18 24 views
1

支付我有問題,用「訂單ID」,類似的「結賬/ onepage /成功」結賬後獲得了用戶的信息:從的Magento - 註冊結帳頁面,然後通過PayPal

$orderInfo = Mage::getModel('sales/order')->load($lastOrderId); 
$customerId = $orderInfo->getCustomerId(); 

訂單註冊在Checkout頁面上然後通過PayPal支付的用戶成爲「客人訂單」,並且在「Model('sales/order')」客戶id爲空的情況下,並且在DB中,該交易和訂單看起來像「訪客訂單」這是由PayPal帳戶,而不是從Magento的。另一個支付系統在Checkout頁面上註冊時工作正常,結帳後我可以獲得客戶ID。 問題是,如何從Magento網站的註冊用戶那裏通過Checkout頁面獲得「用戶ID」並通過PayPal購買了一些東西?

回答

0

不查找任何方式,與貝寶的傢伙可能Magento的人應該談論... 但是,我只是改寫的「註冊」結帳頁面上的按鈕OnClick事件:

<button type="button" class="button" onclick="window.location.href='/customer/account/create';"> 
<span><span>Register</span></span> 
</button> 

之前有「checkout.setMethod()」,我只是發送用戶註冊頁面。

1

您可以通過電子郵件從客戶模型

Mage::getModel('customer/customer')->loadByEmail($orderInfo->getBillingAddress()->getEmail()); 

和更可行的方式加載用戶這樣做會聽save_order_after事件和檢測,如果你正在處理PayPal支付和客戶加入訂單的權利離開