2012-08-08 97 views

回答

29

所有應用的過濾器都存儲在圖層狀態對象中。您可以使用以下代碼輕鬆檢索它們:

$appliedFilters = Mage::getSingleton('catalog/layer')->getState()->getFilters(); 

它會返回一個過濾項目對象的數組。您可以通過做這樣的事情來檢索單個過濾器項目的名稱和應用值:

foreach ($appliedFilters as $item) { 
    $item->getName(); // Name of the filter 
    $item->getLabel(); // Currently selected value 
    $item->getFilter()->getRequestVar(); // Filter code (usually attribute code, except category filter, where it equals "cat") 
} 
+1

$ item-> getFilter() - > getRequestVar(); //過濾器的屬性代碼 – 2012-08-25 15:03:59

+2

如何獲取屬性「color」的id? – Muk 2013-09-02 14:14:05

+0

很好的回答!任何人都知道如何獲得過濾器的代碼(或編號)?所以例如在我的情況下,顏色過濾器ID是187,我在數據庫中查找它,但是如何使用PHP來獲取? – 2017-04-07 16:26:48