Я намагаюся схопити атрибут продукту у шаблоні кошика. Але я просто не працюю! Атрибут встановлено на видимій на Сторінках каталогу на Storefront = так і використовується в Лістингу продуктів = Так
Я використовую спеціальний модуль, щоб замінити такий шаблон:
/vendor/magento/module-checkout/view/frontend/templates/cart/item/default.phtml
У мене є товар:
$_item = $block->getItem();
$product = $_item->getProduct();
Зазвичай я очікую, що користувацький атрибут (тип текстової області в цьому випадку) з кодом атрибута "sample_attr" буде доступний з одним із таких:
$product->getData('sample_attr');
або
$product->getSampleAttr();
Деякі атрибути доступні за допомогою цього (ску, вага, ціна ..), але для спеціального атрибута не працює. Включений помічник (\ Magento \ Msrp \ Helper \ Data) також не має методу атрибутів.
Я можу отримати всі коди атрибутів, використовуючи:
$attributes = $product->getAttributes();
foreach($attributes as $a)
{
var_dump($a->getName());
}
Я також спробував:
$attribute = $product->getResource()->getAttribute('sample_attr');
var_dump($attribute->getFrontend()->getValue($product));
але це повертає нуль.
Тож як я можу отримати значення атрибута?
Я спробував це: Отримайте конкретний атрибут для кожного продукту на сторінці каталогу
Вивести спеціальний атрибут тексту у каталог list.phtml (Magento 2)