Текущий пользователь в Magento?


Я настраиваю страницу просмотра продукта, и мне нужно показать имя пользователя. Как мне получить доступ к информации учетной записи текущего пользователя (если он вошел в систему), чтобы узнать имя и т.д.?

 56
Author: Eran Kampf, 2009-01-06

10 answers

Найдено в разделе "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();
 93
Author: nlaq, 2013-01-16 10:02:25

Взгляните на вспомогательный класс: mage_customer_helper_data

Чтобы просто получить имя клиента, вы можете написать следующий код: -

$customerName = Mage::helper('customer')->getCustomerName();

Для получения дополнительной информации об идентификаторе организации клиента, идентификаторе веб-сайта, электронной почте и т.д. вы можете использовать функцию GetCustomer. Следующий код показывает, что вы можете получить от него:-

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

Из вспомогательного класса вы также можете получить информацию об URL-адресе входа клиента, URL-адресе регистрации, URL-адресе выхода и т.д.

Из Функция isLoggedIn в вспомогательном классе вы также можете проверить, вошел ли клиент в систему или нет.

 22
Author: Mukesh Chapagain, 2011-02-27 18:08:53

Вы можете получить текущее имя пользователя для входа в систему из сеанса следующим образом:

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

Это вернет данные клиента текущего пользователя для входа в систему.

Теперь вы можете получить имя клиента, используя getName()

echo $customer->getName();
 10
Author: Deepak Mankotia, 2016-06-20 06:05:49

Для электронной почты используйте этот код

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

echo $email;
 9
Author: AK., 2013-01-16 10:17:44

Для имени пользователя то же самое с некоторыми изменениями:

$user=$this->__('Welcome, %s!', Mage::getSingleton('customer/session')->getCustomer()->getName());
echo $user;
 4
Author: Vexcor Systems, 2012-01-29 22:03:41

Следующим образом вы можете получить доступ ко всей информации от зарегистрированного пользователя.

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


echo "<pre>" print_r($customer_data);
 4
Author: Alexandar, 2013-07-22 07:54:16
$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();

Получить платежный адрес клиента по умолчанию

 4
Author: Shorabh, 2018-04-09 10:46:32

Таким образом:

$email = Mage::getSingleton('customer/session')->getCustomer()->getEmail();
echo $email;
 2
Author: Fujy, 2012-01-02 09:30:04

Просто,

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

Это возвращает объект customer, затем вы можете получить все сведения из этого объекта customer.

 2
Author: Manikandan Arunachalam, 2014-12-16 07:47:55

Я не знаю этого с самого начала, но посмотрите в файле, Который показывает имя пользователя и т. Д. В заголовке страницы после того, как пользователь вошел в систему. Это может помочь, если вы включите подсказки по шаблонам (см. этот учебник.

Когда вы найдете строку, такую как "Hello <? //code for showing username?>", просто скопируйте эту строку и покажите ее там, где вам нужно

 -5
Author: Click Upvote, 2009-01-06 13:50:27