Magento 2.2.4 не удалось получить данные сеанса клиента
Здесь я не могу получить данные сеанса клиента ($customersession), он работает в версии 2.2.3 Magento, но не работает в версии 2.2.4. Он возвращает значение false, когда кэшируемое значение равно false.
namespace Namespace\ModuleName\Helper;
class Data extends \Magento\Framework\App\Helper\AbstractHelper
{
public $customerSession;
public function __construct(
\Magento\Customer\Model\Session $customerSession
) {
$this->customerSession = $customerSession;
parent::__construct($context);
}
public function getCustomerGroup() {
if($this->customerSession->isLoggedIn()) {
$groups = $this->customerSession->getCustomer()->getGroupId();
return $groups;
}
return '0';
}
}
3
Author: sanket zadafiya, 2018-07-02
1 answers
Проблема с конкретной версией в Magento 2.2.4, которую вы можете проверить здесь,
Url:- https://github.com/magento/magento2/issues/3294
<?php
namespace CompanyName\ModuleName\Helper;
class Data extends \Magento\Framework\App\Helper\AbstractHelper
{
/**
* @var \Magento\Customer\Model\SessionFactory
*/
private $sessionFactory;
/**
* Data constructor.
* @param \Magento\Framework\App\Helper\Context $context
* @param \Magento\Customer\Model\SessionFactory $sessionFactory
*/
public function __construct(
\Magento\Framework\App\Helper\Context $context,
\Magento\Customer\Model\SessionFactory $sessionFactory
) {
parent::__construct($context);
$this->sessionFactory = $sessionFactory;
}
public function getCustomerId()
{
$customerId = $this->sessionFactory->create()->getCustomer()->getId();
return $customerId;
}
}
2
Author: Manish Goswami, 2018-07-11 09:55:07