2009-01-06 19 views
55

मैं उत्पाद दृश्य पृष्ठ को अनुकूलित कर रहा हूं और मुझे उपयोगकर्ता का नाम दिखाना होगा। नाम आदि प्राप्त करने के लिए मैं वर्तमान उपयोगकर्ता की खाता जानकारी (यदि वह लॉग इन है) तक कैसे पहुंचूं?Magento में वर्तमान उपयोगकर्ता?

उत्तर

91

"के अंतर्गत एप्लिकेशन/कोड/कोर/दाना/पृष्ठ/ब्लॉक/html/मिले करने की जरूरत है हेडर.एफ़पी ":

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']; 
} 

तो यह 012 जैसा दिखता हैअपने वर्तमान ग्राहक में लॉग इन मिल जाएगा;)

वर्तमान में व्यवस्थापक में लॉग इन करने के लिए:

Mage::getSingleton('admin/session')->getUser(); 
+1

'मेज :: ऐप() -> isInstalled()' बहिष्कृत है, आप अब 'Mage :: isInstalled() 'का उपयोग कर सकते हैं। – mhyassin

-5

मुझे यह मेरे सिर के शीर्ष से नहीं पता है, लेकिन उस फ़ाइल में देखें जो उपयोगकर्ता के नाम को दिखाता है, उपयोगकर्ता के लॉग इन करने के बाद पृष्ठ के शीर्षलेख में आदि। यह टेम्पलेट चालू करने में मदद कर सकता है संकेत (this tutorial देखते हैं।

जब आप इस तरह के रूप "Hello <? //code for showing username?>" लाइन मिल जाए, सिर्फ इतना है कि लाइन को कॉपी करें और कहां पर

+0

कोड का उपयोग कर दिखा रहा है कि है getWelcome()?> header.phtml में से ग्राहक का नाम मिल सकता है। कोई विचार नहीं कि यह कहां से नाम प्राप्त करता है ... –

+0

यदि आप अपना प्रश्न संपादित कर सकते हैं और उस फ़ंक्शन के आउटपुट को जोड़ सकते हैं, तो मैं इसके लिए उपयोगकर्ता नाम निकालने के लिए कुछ PHP कोड लिख सकता हूं। Magento में फाइलों के गैज़िलियन हैं, इसलिए यह कहना मुश्किल हो सकता है कि कोई विशेष फ़ंक्शन कहाँ संग्रहीत किया जाता है –

+0

धन्यवाद लेकिन मैं उस कोड को लिख सकता हूं जो स्वागत स्ट्रिंग से नाम निकालता है। हालांकि मैं नाम के अलावा अन्य डेटा को पढ़ने में सक्षम होने की उम्मीद कर रहा था - विशेष रूप से, एक अद्वितीय उपयोगकर्ता खाता आईडी। –

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(); 

ग्राहक की संस्था के बारे में अधिक जानकारी के लिए आईडी, वेबसाइट आईडी, ईमेल इत्यादि। आप प्राप्त कर सकते हैं ग्राहक कस्टमर फ़ंक्शन। निम्नलिखित कोड से पता चलता है कि तुम क्या यह से प्राप्त कर सकते हैं: -

echo "<pre>"; print_r(Mage::helper('customer')->getCustomer()->getData()); echo "</pre>"; 

सहायक वर्ग से, आप भी ग्राहक लॉगिन यूआरएल के बारे में जानकारी प्राप्त कर सकते हैं, रजिस्टर यूआरएल, लॉगआउट यूआरएल, आदि

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(); 
+1

कृपया अपने कोड में एक स्पष्टीकरण जोड़ें। अन्यथा यह बहुत मूल्यवान नहीं है। – lxg

+3

आपको वास्तव में किस स्पष्टीकरण की आवश्यकता है? @ शोरभ ने ग्राहकों को दाता लाने के लिए आवश्यक सभी कार्यों को सूचीबद्ध किया ... प्रत्येक प्रोग्रामर को यह समझना चाहिए और गैर-प्रोग्रामर को स्वयं द्वारा Magento कोड स्पर्श करना चाहिए। –

2

बस

$current_customer = $this->_getSession()->getCustomer(); 

इस ग्राहक ने वस्तु देता है, तो आप इस ग्राहक वस्तु से सभी जानकारी प्राप्त कर सकते हैं।

8

आप निम्नलिखित तरीके से सत्र से वर्तमान लॉगिन ग्राहक का नाम प्राप्त कर सकते हैं:

$customer = Mage::getSingleton('customer/session')->getCustomer(); 

यह वर्तमान लॉगिन ग्राहक के ग्राहक विवरण वापस आ जाएगी।

अब आप getName()

echo $customer->getName(); 
संबंधित मुद्दे