2012-12-15 92 views
1

有沒有辦法在Opencart v1.5.4.1的產品頁面中獲得產品的類別parent_id。試圖根據類別parent_id更改按鈕href。如果parent_id = 20,那麼按鈕應該有href1 else href2。在產品頁面上獲取類別父ID - opencart

到目前爲止,我已經做到了這一點,但它不工作。

在模板文件之前,「$this->load->model('tool/image');

$product_cat = $this->model_catalog_product->getCategories($product_id);  
$product_cat_parent = $this->model_catalog_category->getCategory($product_cat[0]['category_id']); 
      if ($product_cat_parent['parent_id'] == '20') { 
       $this->data['sizeguide'] = $this->url->link('faq/faq/info', 'fpath=12'); 
      } else { 
       $this->data['sizeguide'] = $this->url->link('faq/faq/info', 'fpath=13'); 
      } 

補充:

<a class="button2 sizeguidebox" href="<?php echo $sizeguide; ?>"><?php echo $text_sizeguide; ?></a> 
+0

這看起來做工精細。該產品是否屬於多個類別? –

+0

是的,我也使用你的更好的類別模塊....非常有幫助:) – eesyboi

+0

我認爲這個名字看起來很熟悉:) –

回答

1

這看起來更加複雜,但實際上更簡單,更有效,因爲檢查的傻瓜證明方法。它將選擇與當前產品相關的所有類別,查找所有類別信息,並使用parent_id爲20篩選類別。如果查詢有任何結果(即其中一個類別是ID爲20的類別的子類別),那麼它將設置常見問題信息相應

$product_cat = $this->model_catalog_product->getCategories($product_id); 
$result = $this->db->query(" 
SELECT 
    `c`.`parent_id` 
FROM 
    `" . DB_PREFIX . "category` `c` 
LEFT JOIN 
    `" . DB_PREFIX . "product_to_category` `p2c` 
ON 
    `c`.`category_id` = `p2c`.`category_id` 
WHERE 
    `c`.`parent_id` = '20' 
AND 
    `p2c`.`product_id` = '" . (int) $product_id . "' 
"); 

if($result->num_rows > 0) { 
    $this->data['sizeguide'] = $this->url->link('faq/faq/info', 'fpath=12'); 
} else { 
    $this->data['sizeguide'] = $this->url->link('faq/faq/info', 'fpath=13'); 
} 

請注意,這還沒有經過測試,但在理論上應該

+0

是的!完美地工作,非常感謝..如果我可以在這裏說,我感謝您對Opencart的支持,與其他開發人員相比,除Qphoria之外。 :)謝謝 – eesyboi

+0

沒問題。不要忘記用勾號標記答案 –

相關問題