我正在自定義產品視圖頁面,我需要顯示用戶的名稱。 如何訪問當前用戶的帳戶信息(如果他已登錄)以獲取姓名等?Magento當前用戶?
55
A
回答
91
「下的應用程序/代碼/核心/法師/頁/塊/ HTML /發現Header.php「:
public function getWelcome()
{
if (empty($this->_data['welcome'])) {
if (Mage::app()->isInstalled() && Mage::getSingleton('customer/session')->isLoggedIn()) {
$this->_data['welcome'] = $this->__('Welcome, %s!', Mage::getSingleton('customer/session')->getCustomer()->getName());
} else {
$this->_data['welcome'] = Mage::getStoreConfig('design/header/welcome');
}
}
return $this->_data['welcome'];
}
因此它看起來像Mage::getSingleton('customer/session')->getCustomer()
會得到你的當前登錄的用戶;)
,以獲得當前登錄的管理員:
Mage::getSingleton('admin/session')->getUser();
-5
我不知道這是我的頭頂,但在用戶登錄後在頁面的標題中查看顯示用戶名等的文件。如果您啓用了模板,它可能會有所幫助提示(見this tutorial。
當你發現線路如"Hello <? //code for showing username?>"
,只需要複製該行,並顯示在您需要
9
的電子郵件使用此代碼
$email=$this->__('Welcome, %s!', Mage::getSingleton('customer/session')->getCustomer()->getEmail());
echo $email;
4
對於用戶名是相同的一些修改:
$user=$this->__('Welcome, %s!', Mage::getSingleton('customer/session')->getCustomer()->getName());
echo $user;
2
這樣:
$email = Mage::getSingleton('customer/session')->getCustomer()->getEmail();
echo $email;
21
看一看輔助類:Mage_Customer_Helper_Data
爲了簡單地得到了客戶的名字,你可以寫下面的代碼: -
$customerName = Mage::helper('customer')->getCustomerName();
有關客戶的實體的更多信息ID,網站ID,電子郵件等,您可以使用getCustomer函數。下面的代碼顯示你可以從它那裏得到: -
echo "<pre>"; print_r(Mage::helper('customer')->getCustomer()->getData()); echo "</pre>";
從輔助類,你還可以得到關於客戶登錄URL信息,註冊的URL,註銷URL等
從isLoggedIn函數在助手類中,您還可以檢查客戶是否已登錄。
4
以下方式可以從登錄用戶訪問所有信息。
$customer_data=Mage::getSingleton('customer/session')->getCustomer();
echo "<pre>" print_r($customer_data);
4
$customer = Mage::getSingleton('customer/session')->getCustomer(); $customerAddressId = Mage::getSingleton('customer/session')->getCustomer()->getDefaultBilling(); $address = Mage::getModel('customer/address')->load($customerAddressId); $fullname = $customer->getName(); $firstname = $customer->getFirstname(); $lastname = $customer->getLastname(); $email = $customer->getEmail(); $taxvat = $customer->getTaxvat(); $tele = $customer->getTelephone(); $telephone = $address->getTelephone(); $street = $address->getStreet(); $City = $address->getCity(); $region = $address->getRegion(); $postcode = $address->getPostcode();
2
簡單,
$current_customer = $this->_getSession()->getCustomer();
這將返回客戶對象,那麼你就可以得到該客戶對象的所有細節。
8
您可以按以下方式從會話中獲取當前登錄用戶名:
$customer = Mage::getSingleton('customer/session')->getCustomer();
這將返回當前登錄用戶的客戶詳細信息。
現在,您可以通過使用getName()
echo $customer->getName();
相關問題
- 1. Magento列表 - 用戶搜索詞(當前用戶)
- 2. Magento的 - 產品系列與當前用戶的收藏
- 3. 由當前用戶
- 4. 客戶端當前用戶
- 5. Magento獲得當前產品
- 6. Magento獲得當前產品
- 7. 獲取當前頁面 - Magento
- 8. Magento - 獲取當前產品
- 9. 當前用戶只用Rails
- 10. 請求從當前用戶
- 11. keystone.js當前登錄用戶
- 12. 獲取用戶當前apprequests
- 13. Laravel當前用戶模型
- 14. 當前用戶的action.class
- 15. Grails中的當前用戶
- 16. 檢查當前用戶ID
- 17. firebase當前用戶標識
- 18. Redmine當前用戶信息
- 19. 煉油廠+當前用戶
- 20. 用戶當前位置
- 21. 刪除當前用戶
- 22. PFUser當前用戶解析
- 23. Svn獲取當前用戶
- 24. 設計和當前用戶
- 25. get_posts當前用戶只
- 26. 根據當前用戶
- 27. 獲取當前用戶
- 28. Ember識別當前用戶
- 29. SharePoint 2007的當前用戶
- 30. JHipster獲取當前用戶
的代碼表明是<?PHP的echo $這個 - > getWelcome()?>在header.phtml得到客戶的名稱。不知道從哪裏得到的名字... – 2009-01-06 14:27:46
如果你可以編輯你的問題,並添加到該功能的輸出,我可以寫一些PHP代碼爲你提取用戶名。 Magento有很多文件,因此可能很難判斷某個特定函數的存儲位置 – 2009-01-06 16:28:28
謝謝,但我可以編寫從歡迎字符串中提取名稱的代碼。 但是我希望能夠讀取名稱以外的其他數據 - 特別是唯一的用戶帳戶ID。 – 2009-01-07 09:40:46