簡體   English   中英

通過magento中的電子郵件ID獲取有關客戶的信息

[英]Get information about customer by email id in magento

我希望通過電子郵件ID獲取客戶信息,因此我在控制器中創建了一個包含內容的方法:

public function showAction(){
    $customer_email = "abc@mail.com";
    $customer = Mage::getModel("customer/customer");
    $customer->setWebsiteId(Mage::app()->getWebsite()->getId());
    $customer->loadByEmail($customer_email);
    echo $customer->getId();
    echo $customer->getFirstName();
    echo $customer->getEmail(); 
}

但是當它運行時它返回null值,我不知道為什么? 請幫我

在您的系統配置中,客戶帳戶由網站共享,因此需要在具有website_id值的客戶模型上使用loadByEmail方法,並且此網站ID必須與客戶關聯的網站相對應。

或者,由於您的控制器似乎是管理員, Mage::app()->getWebsite()->getId()返回0,這是不對應的。

因此,您的解決方案是要全局共享客戶帳戶( 系統 > 配置 > 客戶 > 客戶配置 > 帳戶共享選項 ),因為如果您只運行一個網站,要么使用具有的網站ID,它不會改變很多事情由用戶指定,或者至少不是由Mage::app()->getWebsite()->getId()檢索。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM