Angenommen, ich habe ein Attribut, das eine Sammlung von Optionen ist (Dropdown / Mehrfachauswahl).
Ich kann den Attributwert für ein bestimmtes Produkt abrufen:
$store_id = [something];
$productId = [something];
// this is a select/multiselect
$attribute_code = [something];
$option_id = Mage::getResourceModel('catalog/product')->getAttributeRawValue($productId, $attribute_code, $store_id );
$option_label = ???
Jetzt habe ich das Attribut option_id, das ein numerischer Wert ist ...
... Wie lade ich die Frontend-Attributbezeichnung für meinen Attributwert am besten? (ohne das vollständige Produkt zu laden)
Lösung danke Marius :
// Not loading the product - just creating a simple instance
$product = Mage::getModel('catalog/product')
->setStoreId($store_id)
->setData($attribute_code,$option_id);
$option_label = $product->getAttributeText($attribute_code);
getAttributeText('value')
keine ordnungsgemäßen Funktionen ausgeführt werden, wenn die getAllOptions()
Methode des Attributs Optionen zurückgibt, die mit verschachtelten Arrays angeordnet sind (ausgedrückt als <optgroup>
in der Dropdown-Liste).