次のコードでは、製品のリスト、在庫リストを出力していますが、何らかの理由でそれを機能させる唯一の方法は、それらをループしながら製品を再度インスタンス化することです。そうしないと、価格と在庫がわかりません。
何か案は?
ここに私のコードがあります、
$data = Mage::getModel('catalog/product')->getCollection()
->addAttributeToSelect('name')
->addAttributeToSelect('type_id')
->addAttributeToSelect('sku')
->addAttributeToSort('name', 'ASC')
->addFilter('type_id', 'simple');
?><table dir="ltr" summary="Stock report table">
<thead>
<tr>
<th>Id</th>
<th>Type</th>
<th>SKU</th>
<th>Name</th>
<th>Price</th>
<th>Stock</th>
</tr>
</thead>
<tbody>
<?php
$i = 0;
foreach($data as $product){
$p = Mage::getModel('catalog/product')->load($product->getId());
echo "<tr>";
echo "<td>".$p->getId()."</td>";
echo "<td>".$p->getTypeId()."</td>";
echo "<td>".$p->getSku()."</td>";
echo "<td>".$p->getName()."</td>";
echo "<td>£".number_format($p->getPrice(), 2)."</td>";
echo "<td>".$p->getData('stock_item/qty')."</td>";
$i++;
// if($i == 1){ break; }
}
?></tbody>
</table>
<?php