这是我用来获取属性的magento代码。
echo $_product->getResource()->getAttribute('attrcode')->getFrontend()->getValue($_product);
此代码在view.phtml
中正常工作,它返回属性代码值。
当我在list.phtml
文件中编写相同代码时,此代码返回blank
。
答案 0 :(得分:8)
<?php echo $_product->getAttributeText('attrcode');?>
请在列表页面上使用该代码,并检查('在产品列表中使用':“是”)中的属性设置
答案 1 :(得分:0)
以下是代码获取属性名称和值,它不属于任何产品
$attributeCode = 'YOUR_ATTRIBUTE_CODE';
$product = Mage::getModel('catalog/product');
$productCollection = Mage::getResourceModel('eav/entity_attribute_collection')
->setEntityTypeFilter($product->getResource()->getTypeId())
->addFieldToFilter('attribute_code', $attributeCode);
$attribute = $productCollection->getFirstItem()->setEntity($product->getResource());
print_r($attribute->getData()); // print out the available attributes
$options = $attribute->getSource()->getAllOptions(false);
print_r($options);
答案 2 :(得分:0)
如果要在Magento 2 phtml文件中显示特定属性的所有值,请使用以下代码
$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$eavConfig = $objectManager->get('\Magento\Eav\Model\Config');
$attribute = $eavConfig->getAttribute('catalog_product','attribute_code');
$values = $attribute->getSource()->getAllOptions();