Magento 2.1: Как получить переопределенные атрибуты продукта LayoutProcessor.php
Я хочу скрыть регион "Почтовый индекс" в блоке сводки на странице корзины.Я переписал файл блока LayoutProcessor.php . В этом файле, если бы я скрыл следующую часть от процесса функции, я смог бы скрыть "Почтовый индекс/Почтовый индекс".
'postcode' => [
'visible' => true,
'formElement' => 'input',
'label' => __('Zip/Postal Code'),
'value' => null
]
Я хочу проверить атрибуты товаров в корзине. Если какой-либо из продуктов имеет значение атрибута "Нет", скройте "Почтовый индекс" и вместо этого покажите сообщение об ошибке. Как я могу добавить состояние в LayoutProcessor.php чтобы скрыть то же самое на основе атрибутов товаров в корзине.
1
Author: sreelakshmi, 2017-02-27
1 answers
Добавьте в функцию следующие строки. Данные $CARTDATA предоставят вам продукты
$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$productObject = $objectManager->create('Magento\Catalog\Model\Product');
$cartObject = $objectManager->create('Magento\Checkout\Model\Cart');
$cartData = $cartObject->getQuote()->getAllItems();
Затем, пожалуйста, просмотрите данные $CARTDATA и используйте следующий код в цикле
foreach ($cartData as $item) {
$product = $productObject->load($item->getProduct()->getId());
$attr = $product->getAttributeText('attribute_you_want') ;
/*conditions u need*/
}
Добавьте условие "если", чтобы скрыть нужную вам деталь.
0
Author: sreelakshmi, 2017-02-27 13:33:53