2013-02-17 114 views
0

好的,我正在運行Magento 1.7,並被我的老闆要求在我們網站的頂部有一個欄,顯示庫存中的物品總數以及所述的總價值股票。Magento - 顯示所有產品的總價

到目前爲止,我已經計算出項目總數。我對PHP不太好,所以這是一個很大的嘗試和錯誤。

這裏是我的代碼是什麼樣子至今[更新:有一個過濾器,以排除脫銷產品]:

<?php 
    $collection = Mage::getModel('catalog/product')->getCollection() 
->joinField(
    'qty', 
    'cataloginventory/stock_item', 
    'qty', 
    'product_id=entity_id', 
    '{{table}}.stock_id=1', 
    'left' 
) 
->addAttributeToFilter('qty', array('eq' <= 0)); 
    $_coreHelper = $this->helper('core'); 


    $sum = 0; 

     foreach ($collection as $product){ 
    $sum += $product->getPrice(); 
    } 
?> 

As of today our inventory consists of <span style="color: black; font-size:16px; font-family: Helvetica, sans-serif; font-weight: 400; border: 1px solid black; padding: 0px 2px 0px 2px;"><?php echo $collection->count(); ?></span> items with a total value of <span style="color: black; font-size:16px; font-family: Helvetica, sans-serif; font-weight: 400; border: 1px solid black; padding: 0px 2px 0px 2px;"><?php echo $_coreHelper->currency($sum); ?></span> 

總和節顯然是行不通的。

任何人都可以給我幾個關於如何完成這一點的指針。我假設你會使用一個循環來加載所有的產品價格,然後把它們加在一起並顯示出來,但是正確地到達那裏對我來說是一個問題。

任何幫助,將不勝感激。

+0

try $ collection = Mage :: getModel('catalog/product') - > getCollection(); 但你會有所有物品,有或沒有,啓用或不... – dagfr 2013-02-17 00:45:08

+0

我不能添加一個過濾器,以擺脫缺貨項目?我見過其他人做過類似的事情。 – nesagwa 2013-02-17 01:33:05

回答

0

是的,你可以這樣:

<?php $collection = Mage::getModel('catalog/product')->getCollection()->addAttributeToFilter('status','1'); 
$sum = 0; 
$count = 0; 
foreach ($collection as $_product) { 
    $stock = Mage::getModel('cataloginventory/stock_item')->loadByProduct($_product)->getQty(); 
    if ($stock>=1) { 
     $sum+=$_product->getPrice()*$stock; 
     $count+=$stock; 
    } 
} 
echo "You have $count items for a total value of ".Mage::helper('core')->currency($sum); 
+0

不幸的是,這會導致我的主頁不顯示任何內容。我得到「[2013年2月18日15時09分10秒] PHP解析錯誤:語法錯誤,/ home1/melvynan/public_html/app/design/frontend/default/fly/template/catalog/category /第6行的stocktotal.phtml「在我的錯誤日誌中。 – nesagwa 2013-02-18 15:11:20

+0

現在我得到[18-Feb-2013 16:02:24] PHP解析錯誤:語法錯誤,意外的T_VARIABLE在/ home1/melvynan/public_html/app/design/frontend/default/fly/template/catalog/category /cat_images.phtml第8行 – nesagwa 2013-02-18 22:07:43

0

我曾與上述dagfr的回答有些問題時,用getPrice()失敗時,對管理儀表板執行返回的任何值,

添加:

$collection->addAttributeToSelect('price'); 

讓我然後通過

$_product['price'] 
接入價格
相關問題