2013-08-19 73 views
1

在包產品頁面中,如果包中的產品缺貨,我需要顯示。目前,該產品並未出現在下拉菜單中。我已經看過了「select.phtml」文件,發現在一開始就知道這行代碼獲得期權價值的下拉列表:Magento包下拉需要顯示缺貨

<?php $_selections = $_option->getSelections(); ?> 

不幸的是,這並不能取「缺貨」項目。那麼,有沒有辦法包含這些項目?

謝謝。

回答

1

希望這可以幫助某人。搜索小時後,終於發現,是造成應用程序/代碼/核心/法師/包/座/查看/類型裏面的問題行/ Bundle.php

你需要改變這一行

$this->_options = $optionCollection->appendSelections($selectionCollection, false, 
      Mage::helper('catalog/product')->getSkipSaleableCheck() 
     ); 

這個

$this->_options = $optionCollection->appendSelections($selectionCollection, false, 
     true   
     //Mage::helper('catalog/product')->getSkipSaleableCheck() 
     ); 
0

在Magento 1.8.1你發現應用程序/代碼/核心/法師/包/座/目錄/產品/瀏覽/類型的文件/ Bundle.php

要知道的在覈心的變化會得到y ou網站沒有更新的好處。將您的文件複製到本地目錄。

0

建立在SimCity的答案上,而不是擴展/覆蓋塊,您可以執行以下操作。我已經加入此代碼到束/目錄/產品/視圖/類型的頂部/捆/ options.phtml

// Get the current value of SkipSaleableCheck 
<?php $skipSaleableCheck = Mage::helper('catalog/product')->getSkipSaleableCheck() ?> 
// Overwrite this value with a 'true' value 
<?php Mage::helper('catalog/product')->setSkipSaleableCheck(true) ?> 

可以在相同的文件的底部使用以下代碼然後重置此值:

<?php Mage::helper('catalog/product')->setSkipSaleableCheck($skipSaleableCheck) ?> 

該方法提供了相同的結果,而不必重寫核心Magento塊。