Доступ к пользовательским переменным из .phtml в Magento - PullRequest
0 голосов
/ 08 августа 2011

У меня есть файл (js.phtml), где выполняется мой код. Мне нужно получить доступ к некоторым данным пользователя. Когда я error_log ($ this) в js.phtml, он отображает «Mage_Core_Block_Template» - что меня смущает. Я ожидаю, что это будет родительский класс, а не значение класса, передаваемого в мой файл .phtml.

Итак, как мне предоставить .phtml файл с пользовательскими объектами или методами? Я очень новичок в Magento, и я только что выпал на задание, поэтому я прошу прощения за возможно использование неправильной терминологии.

Edit: Мой полный путь к файлу:

  • / приложение / дизайн / интерфейс // по умолчанию / шаблон / клиент / Добро пожаловать / js.phtml

Здесь также находится полный модуль dir:

  • / приложение / код / ​​местные // Клиент /

Edit: Мне нужен доступ к стране пользователя и идентификатору пользователя. Это нормально, если страна пуста.

Edit: Я провел дополнительное исследование, похоже, я могу сделать что-то вроде этого: Текущий пользователь в Magento?

Но я еще не пробовал это в коде ....

Редактировать: понял это:

error_log(print_r(Mage::getSingleton('customer/session')->getCustomer()->getEntityId(), true));
error_log(print_r(Mage::getSingleton('customer/session')->getCustomer()->getCountry(), true));

Ответы [ 2 ]

2 голосов
/ 09 августа 2011

Чтобы получить идентификатор клиента:

echo Mage::getSingleton('customer/session')->getCustomer()->getId();

Чтобы получить страну - зависит от того, с какого адреса.Вот пример получения кода страны с биллингового адреса по умолчанию:

echo Mage::getSingleton('customer/session')->getCustomer()->getDefaultBillingAddress()->getCountry();
1 голос
/ 09 августа 2011

Я немного новичок в Magento, но думаю, что это должно сработать.

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

Это получает объект клиента.Тогда ...

echo $customer->getAddresses();

Это должно получить страну где-то в адресе.Что касается идентификатора пользователя ... Я не вижу его на странице документации .. Вы можете попробовать

echo $customer->getAttributes();

И посмотреть, что там.Страница документации находится по адресу:

http://docs.magentocommerce.com/Mage_Customer/Mage_Customer_Model_Customer.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...