Підступна війна росії проти України. Орієнтовні втрати ворога
(станом на 22.04.2024)
460260
осіб
348
літаків
325
гелікоптерів
7236
танків
13904
ББМ
11736
артилерія
768
ППО
1046
РСЗВ
15812
машин
26
кораблі і катери
Як перевірити, що користувач залогінився в Magento
Опубліковано

Як перевірити, що користувач залогінився в Magento

Досить часто при роботі з модулями в Мадженто виникає завдання визначити, чи увійшов користувач в систему (залогінився) чи ні. Тобто, визначати користувача як авторизованого, або як гостя. Наприклад, потім цю інформацію можна буде використовувати, щоб давати залогіненим користувачам доступ до додаткового функціоналу в інтернет-магазині або ж перенаправляти на певну сторінку на сайті (наприклад, сторінку входу чи реєстрації).

Отримати інформацію про вхід в систему Мадженто можна досить просто, використовуючи дані сесії користувача. Для цього ми будемо використовувати єдиний екземпляр класу (тобто, Singleton) модуля Customer.

Щоб перевірити користувача на авторизованість в системі Мадженто, використовуйте наступну конструкцію:

Mage::getSingleton('customer/session')->isLoggedIn()

 

Результат даного коду буде представлений в логічному булевому типі (істина – true або хиба – false). Його можна потім призначити змінній і далі в коді використовувати для перевірки, або ж робити перевірку безпосередньо, без використання змінної.

Наприклад, найпростіша перевірка може виглядати так:

 

<?php
  $customerLoggedIn = Mage::getSingleton('customer/session')->isLoggedIn();
  if ($customerLoggedIn) {
    echo "Користувач залогінився в системі Мадженто";
  } else {
    echo "Користувач не залогінився в системі Мадженто і представлений на сайті як Гість";
  }
?>

 

Цей код можна використовувати як в модулі, так і в PHTML файлах-шаблонах.

 

Якщо вам потрібно більше інформації про користувача, тоді ви можете її отримати з використанням наступного коду:

 

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

 

Сподіваємося, що сьогоднішній невеликий урок стане вам в нагоді у практиці!

 

 

Напишіть тут свою думку/питання

Ваша пошта не публікуватиметься. Обов’язкові поля позначені *