Wie kann Magento ein Attribut findet Wert von einem bestimmten Attribut - Label oder einer bestimmten Attribut - ID?
Wie kann Magento ein Attribut findet Wert von einem bestimmten Attribut - Label oder einer bestimmten Attribut - ID?
Antworten:
$productModel = Mage::getModel('catalog/product');
$str_attr_label = "color"; //or "size", etc...
$int_attr_id = 8; // or any given id.
$int_attr_value = 21; // or any given attribute value id.
// Chose either
if ($byLabel){
$attr = $productModel->getResource()->getAttribute($str_attr_label);
}
if ($byId){
$attr = Mage::getModel('catalog/resource_eav_attribute')->load($int_attr_id);
}
if ($attr->usesSource()) {
echo $color_label = $attr->getSource()->getOptionText($int_attr_value);
}
Einfach ausgedrückt: Verwenden Sie die Methode getAttributeText .
$product->getAttributeText('brand')
Falls jemand diese Seite findet und einige Methoden zum Nachschlagen von Attributen jeglicher Art anstelle von nur Produktattributen wünscht, finden Sie hier ein Beispiel, um ein von mir erstelltes zufälliges Attribut mit dem Namen "Spezialität" nachzuschlagen und alle Optionen als aufzulisten eine Anordnung.
$attr = Mage::getResourceModel('eav/entity_attribute_collection')->setCodeFilter('specialty')->getData()[0];
$attributeModel = Mage::getModel('eav/entity_attribute')->load($attr['attribute_id']);
$src = $attributeModel->getSource()->getAllOptions();