Php Magento 2.0-如何获取客户多选属性选项值
我正在尝试从Magento 2.0EE上的客户会话中获取当前商店范围内的自定义客户属性选项值 现在我只得到选项ID:Php Magento 2.0-如何获取客户多选属性选项值,php,magento,custom-attributes,magento-2.0,customer,Php,Magento,Custom Attributes,Magento 2.0,Customer,我正在尝试从Magento 2.0EE上的客户会话中获取当前商店范围内的自定义客户属性选项值 现在我只得到选项ID: $objectManager = \Magento\Framework\App\ObjectManager::getInstance(); $customerSession = $objectManager->get('Magento\Customer\Model\Session'); $customerRepository = $objectManager -&g
$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$customerSession = $objectManager->get('Magento\Customer\Model\Session');
$customerRepository = $objectManager
->get('Magento\Customer\Api\CustomerRepositoryInterface');
$customer = $customerRepository->getById($customerSession->getCustomerId());
$attrValue = $customer->getCustomAttribute('attribute_code')->getValue();
var\u dump($attrValue)是字符串(id1、id2、id3)
如何获取这些选项的前端文本值。我找到了一个解决方案,我不确定这是否是一个好的做法…:
$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$customerSession = $objectManager->get('Magento\Customer\Model\Session');
$customerRepository = $objectManager
->get('Magento\Customer\Api\CustomerRepositoryInterface');
$customer = $customerRepository->getById($customerSession->getCustomerId());
$model = $objectManager->create('Magento\Eav\Model\ResourceModel\Entity\Attribute\Option\Collection');
$model->setIdFilter(explode(',',$customer->getCustomAttribute('attribute_code')->getValue()))
->setStoreFilter();
var_dump($model->toOptionArray());