Dovrai unirti al tavolo per ottenere qty.
Vedi sotto il codice:
$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(),
);
}
Come ottenere il valore dell'attributo creato qui per es. Ho creato un attributo chiamato size come recuperare quel valore
AGGIORNAMENTO (Anche se dovresti chiedere in un'altra domanda, ma risponderò qui per te.)
Per ottenere l'attributo personalizzato dovrai aggiungere l'attributo nella ->addAttributeToSelect
sezione.
Non funziona ancora?
Potrebbe essere necessario caricare un modello di prodotto poiché a volte ho riscontrato che non tutti gli attributi personalizzati sono associati quando lo si estrae da una raccolta (inteso per motivi di prestazioni, immagino). Qualcosa di simile a:
$_product = Mage::getModel('catalog/product')->load($product->getId());
$size = $_product->getSize();