本文整理汇总了PHP中Magento\Customer\Model\Session::setCustomerData方法的典型用法代码示例。如果您正苦于以下问题:PHP Session::setCustomerData方法的具体用法?PHP Session::setCustomerData怎么用?PHP Session::setCustomerData使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Magento\Customer\Model\Session
的用法示例。
在下文中一共展示了Session::setCustomerData方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: beforeDispatch
/**
* @param AbstractAction $subject
* @param RequestInterface $request
* @return void
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
*/
public function beforeDispatch(AbstractAction $subject, RequestInterface $request)
{
if ($this->state->getAreaCode() == Area::AREA_FRONTEND && $request->isPost() && $this->notificationStorage->isExists(NotificationStorage::UPDATE_CUSTOMER_SESSION, $this->session->getCustomerId())) {
$customer = $this->customerRepository->getById($this->session->getCustomerId());
$this->session->setCustomerData($customer);
$this->session->setCustomerGroupId($customer->getGroupId());
$this->session->regenerateId();
$this->notificationStorage->remove(NotificationStorage::UPDATE_CUSTOMER_SESSION, $customer->getId());
}
}
示例2: executeInternal
/**
* Forgot customer account information page
*
* @return \Magento\Framework\View\Result\Page
*/
public function executeInternal()
{
/** @var \Magento\Framework\View\Result\Page $resultPage */
$resultPage = $this->resultPageFactory->create();
$block = $resultPage->getLayout()->getBlock('customer_edit');
if ($block) {
$block->setRefererUrl($this->_redirect->getRefererUrl());
}
$data = $this->session->getCustomerFormData(true);
$customerId = $this->session->getCustomerId();
$customerDataObject = $this->customerRepository->getById($customerId);
if (!empty($data)) {
$this->dataObjectHelper->populateWithArray($customerDataObject, $data, '\\Magento\\Customer\\Api\\Data\\CustomerInterface');
}
$this->session->setCustomerData($customerDataObject);
$this->session->setChangePassword($this->getRequest()->getParam('changepass') == 1);
$resultPage->getConfig()->getTitle()->set(__('Account Information'));
$resultPage->getLayout()->getBlock('messages')->setEscapeMessageFlag(true);
return $resultPage;
}