2011-11-22 14 views
6

Tengo un atributo desplegable llamado "Housing" (código de atributo "housing"). Quiero obtener el texto de la opción seleccionada para un producto, pero la función "getAttributeText" no devuelve nada.Magento: getAttributeText no funciona

Mi código:

$product_object = Mage::getModel('catalog/product')->load($productId); 
$housing = $product_object->getHousing(); 
echo $housing; 
echo "<br>"; 

$housing = $product_object->getAttributeText('housing'); 
echo $housing; 
echo "<br>"; 

$housing = $product_object->getHousingText(); 
echo $housing; 
echo "<br>"; 

El getHousing función devuelve el identificador de la opción correcta, pero "getAttributeText" y "getHousingText" no devuelve nada.

¿Alguna idea de por qué?

+0

Es interesante que esto no funcionaba. ¿Cuál es el contexto en el que se ejecuta este código? – benmarks

+0

Benmarks acordados, si hubiera depurado el objeto del producto, ¿tal vez habría alguna información útil allí? ;) Tal vez fue solo un error ortográfico. –

+1

Debe establecer en los atributos admin >> que atribuye cómo "Usado en el listado de productos" a Sí. Para ver http://stackoverflow.com/questions/14321256/magento-getattributetextmanufacturer-doesnt-work –

Respuesta

17

intento,

$prod = Mage::getModel('catalog/product')->load($productId); 
$housing = $prod->getResource()->getAttribute('housing')->getFrontend()->getValue($prod); 
echo $housing; 
+0

¡Está funcionando, gracias! – Shani1351

+0

También trabajando para atributos de direcciones. Gracias ! – JonaPkr

+0

Utilicé este código y traté de mostrar el atributo del fabricante, pero me da un "No". También configuré el Listado de productos usados ​​en admin en SÍ – nosnevetzy

1

Prueba el siguiente código:

$product_object->getData('housing') 
+2

Cuidar para comentar su código, ¿cómo funciona? ¿Tal vez un enlace a algún lugar con una descripción más detallada sobre los usos de 'getData'? – Yaroslav

+0

Claro, aquí hay un artículo extenso al respecto: http://www.crearecommerce.co.uk/blog/magento-tips/getdata-method-with-products.php – Dave

+0

Esto funcionó para mí, donde el resto de los métodos no lo hicieron. –