Categorie
Blog

Recuperare il valore dell’etichetta admin di un attributo prodotto

Questo post sarà brevissimo ma risolverà molti problemi e mal di testa a tutti coloro che lavorano su Magento.

Capita spesso di avere la necessità di recuperare il valore di un attributo di un prodotto. Come tutti sanno ogni attributo ha 2 valori quando è associato ad un prodotto: il valore admin e il valore della vista (che è la sua traduzione per quella lingua e/o vista).

Di seguito il metodo per recuperare entrambi i valori (nell’esempio si recupera il valore dell’attributo Manufacturer):

1) Recuperare l’etichetta admin:
[sourcecode language=”php”]

$curProduct = Mage::getModel("catalog/product")->load($_product->getId());
$manufacturerAdminLabel = null;
$_attribute= $curProduct->getResource()->getAttribute("manufacturer");
$_options= $_attribute->getSource()->getAllOptions(true, true);
foreach($_options as $option){
if ($option[‘value’] == $curProduct->getData("manufacturer")){
$manufacturerAdminLabel = $option["label"];
Mage::log($manufacturerAdminLabel);
}
}

[/sourcecode]

2) Recuperare l’etichetta della vista corrente:
[sourcecode language=”php”]

$curProduct->getAttributeText("manufacturer");

[/sourcecode]