2012-08-08 13 views

Odpowiedz

29

Wszystkie zastosowane filtry są przechowywane w obiekcie stanu warstwy. Możesz je łatwo odzyskać, korzystając z następującego fragmentu:

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

Zwróci ci tablicę obiektów filtrujących. Możesz pobrać nazwę i zastosowaną wartość pojedynczego elementu filtru, wykonując coś takiego:

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(); // Kod atrybutu filtru –

+2

Jak uzyskać identyfikator atrybutu "kolor"? – Muk

+0

Świetna odpowiedź! Czy ktoś wie, jak uzyskać kod (lub numer identyfikacyjny) filtra? Na przykład w moim przypadku identyfikator filtra koloru to 187, sprawdziłem go w bazie danych, ale jak mogę to uzyskać za pomocą php? –

Powiązane problemy