2012-11-03 13 views
5

Mam produkt, który należy do dwóch kategorii "pierścieni" i "collections-> Waves" (category-> podkategorii)prestashop powiązane kategorie w product.tpl

mogę pokazać kategorii default i to odnośnik jak to

<a href="{$link->getCategoryLink($product->id_category_default,$product->category)}" title="{$product->category}">{$product->category}</a> 

Ale nie mogę pokazać te (domyślnie) związane kategorie byle jak. Czy w obiekcie $ product istnieje tablica z powiązanymi kategoriami?

Bo wiem, że wszystkie kategorie w zmiennej $ kategoriach (nie podkategorii może to być problem, fale przyczyną jest podkategorii)

Dzięki za wszystko

Odpowiedz

7

patrzeć w klasie Produktu , ma piękny funkcję:

/** 
* getProductCategories return an array of categories which this product belongs to 
* 
* @return array of categories 
*/ 
public static function getProductCategories($id_product = '') 
{ 
    $ret = array(); 
    if ($row = Db::getInstance(_PS_USE_SQL_SLAVE_)->ExecuteS(' 
    SELECT `id_category` FROM `'._DB_PREFIX_.'category_product` 
    WHERE `id_product` = '.(int)$id_product) 
    ) 
     foreach ($row as $val) 
      $ret[] = $val['id_category']; 
    return $ret; 
} 

Pozdrowienia

+1

Wielkie dzięki, ja nie zobaczył! FYI dla innych osób: W product.tpl byłoby tak, aby mieć tablicę '$ product-> getProductCategories ($ product-> id)' – pikilon

+0

Wolałbym używać 'Product :: getProductCategories ($ products-> id) 'biorąc pod uwagę, że funkcja jest statyczna – Aeradriel