2014-04-04 185 views
0

我想檢查當前產品是否被禁用,重定向到它的類別url。我正在使用該方法獲取當前產品。但是,它似乎只適用於啓用的產品。如果它是我的情況下的禁用產品,即可配置產品,則不會記錄其狀態。它只在日誌文件中記錄啓用的產品狀態「1」。Magento獲得當前產品

$product = Mage::registry('current_product'); 
$status=$product->getStatus(); 
Mage::log($status,null,'log.log'); 

在我看來,我不能記錄任何禁用的產品集合。

回答

0

這就是它應該如何工作。如果您的產品被禁用,您將無法瀏覽它,因此Magento不會將其註冊到'current_product'中。

要做到這一點,你必須創建自己的模塊並添加觀察員事件catalog_controller_product_init_before(這是你被轉發到「noRoute」之前被分派的最後一個事件)。 在觀察者中,您必須獲取url參數並基於這些參數,您必須自己加載產品(請注意url可以是/product.html或/ catalog/product/view/id/XX,並且您必須爲兩者創建案例場景)。之後,您可以檢查產品是否已停用,並將客戶重定向到任何您想要的地方。

+0

這正是我們正在嘗試的。感謝觀察員提示。 – user2700690