0
在下面的代碼中,我打印了一個產品列表,一個庫存清單,出於某種原因,使其工作的唯一方法是在循環遍歷它們的同時再次實例化產品。否則,我錯過了價格和庫存。爲什麼我需要實例化產品兩次?
任何想法?
這裏是我的代碼,
$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
這適用於價格,根據我的答案。但是,這似乎不適用於股票。我認爲這是因爲我們爲我們的產品使用了OrganicInternet_SimpleConfigurableProducts,這意味着'stock_status'只是返回一個空白'stock_item'數組 – 2012-04-20 15:15:01