Program Club

현재 Magento 사용자입니까?

proclub 2020. 12. 14. 20:09
반응형

현재 Magento 사용자입니까?


제품보기 페이지를 사용자 지정 중이며 사용자 이름을 표시해야합니다. 현재 사용자 (로그인 한 경우)의 계정 정보에 액세스하여 이름 등을 얻으려면 어떻게해야합니까?


"app / code / core / Mage / Page / Block / 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();

도우미 클래스를 살펴보십시오 : 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 함수에서 고객의 로그인 여부를 확인할 수도 있습니다.


다음과 같은 방법으로 세션에서 현재 로그인 고객 이름을 가져올 수 있습니다.

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

현재 로그인 고객의 고객 세부 정보를 반환합니다.

이제 다음을 사용하여 고객 이름을 얻을 수 있습니다. getName()

echo $customer->getName();

이메일의 경우이 코드를 사용하십시오.

$email=$this->__('Welcome, %s!', Mage::getSingleton('customer/session')->getCustomer()->getEmail());

echo $email;

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

고객 기본 청구 주소 가져 오기


사용자 이름은 일부 수정과 동일합니다.

$user=$this->__('Welcome, %s!', Mage::getSingleton('customer/session')->getCustomer()->getName());
echo $user;

다음 방법으로 로그인 한 사용자의 모든 정보에 액세스 할 수 있습니다.

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


echo "<pre>" print_r($customer_data);

이 방법:

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

간단히,

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

그러면 고객 개체가 반환되고이 고객 개체에서 모든 세부 정보를 얻을 수 있습니다.


머리 위에서는 잘 모르겠지만 사용자가 로그인 한 후 페이지 헤더에 사용자 이름 등이 표시된 파일을 살펴 봅니다. 템플릿 힌트를 설정하면 도움이 될 수 있습니다 (다음을 참조 하십시오. 튜토리얼 .

When you find the line such as "Hello <? //code for showing username?>", just copy that line and show it where you need to

참고URL : https://stackoverflow.com/questions/416553/current-user-in-magento

반응형