ฉันพยายามคว้าคุณลักษณะของผลิตภัณฑ์ในเทมเพลตรถเข็น แต่ฉันไม่ทำงาน! แอ็ตทริบิวต์ถูกตั้งค่าเป็นมองเห็นได้บนหน้าแคตตาล็อกบนหน้าร้าน = ใช่และใช้ในรายการผลิตภัณฑ์ = ใช่
ฉันใช้โมดูลที่กำหนดเองเพื่อแทนที่แม่แบบต่อไปนี้:
/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();
แอททริบิวบางตัวสามารถใช้งานได้โดยใช้ (sku, น้ำหนัก, ราคา .. ) แต่สำหรับแอตทริบิวต์ที่กำหนดเองจะใช้ไม่ได้ ผู้ช่วยเหลือที่รวมอยู่ (\ 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)