Tendrá que unirse a la tabla para obtener la cantidad.
Ver abajo el código:
$products = Mage::getModel('catalog/product')
->getCollection()
//->addAttributeToSelect('*')
->addAttributeToSelect(array('name', 'thumbnail', 'weight' ,'price','description'))
->joinField(
'qty',
'cataloginventory/stock_item',
'qty',
'product_id=entity_id',
'{{table}}.stock_id=1',
'left'
);
foreach ($products as $product) {
$p['products'][] = array(
'id' => $product->getId(),
'sku' => $product->getSku(),
'name' => $product->getName(),
'description' => $product->getDescription(),
'weight' => $product->getWeight(),
'created at' => $product->getCreatedAt(),
'pirce' => Mage::helper('core')->currency($product->getPrice(), true, false), //." ".$currencyCode,
//get qty
'qty' => $product->getQty(),
);
}
Cómo obtener el valor de atributo creado aquí, por ejemplo, he creado un atributo llamado tamaño, cómo obtener ese valor
ACTUALIZACIÓN (aunque debe preguntar en otra pregunta, pero responderé aquí por usted).
Para obtener un atributo personalizado, deberá agregar el atributo en la ->addAttributeToSelect
sección.
¿Aún no funciona?
Es posible que deba cargar un modelo de producto, ya que a veces he experimentado que no todos los atributos personalizados se adjuntan cuando lo saca de una colección (supongo que por razones de rendimiento). Algo como:
$_product = Mage::getModel('catalog/product')->load($product->getId());
$size = $_product->getSize();