2014-02-10 3 views
1

범주 모듈을 수정하여 현재 최상위 범주 페이지의 하위 범주 만 표시하도록하는 방법이나 확장이 있습니까? 예를 들어Opencart의 범주 모듈에 하위 범주 만 표시

, 나는 "노트북 & 데스크탑"에 카테고리 페이지입니다 경우, 사이드 바 모듈은 같은 "맥"과 "PC를의"와 같은 "노트북 & 데스크탑"범주와 연관된 하위 범주를 나열합니다 메인 제목 "Laptops & 데스크톱"(다른 최상위 카테고리를 나열하거나 표시하지 않음).

+0

제품이 상위 카테고리에 추가되면 어떻게 될까요? –

+0

우리는 모든 상위 카테고리 – Manish

+0

에 하위 카테고리가 있지만 제품이 "Macs"및 "PCs"와 같은 하위 카테고리가 아닌 "랩톱 및 데스크톱"과 같은 상위 카테고리에만 할당 된 경우 어떻게해야합니까? –

답변

1

foreach 섹션을 catalog/controller/module/category.php으로 업데이트하면 다음과 같은 방식으로 왼쪽 열에 하위 카테고리 만 표시됩니다.

$cur_category_id = $this->data['category_id']; // new code 
    foreach ($categories as $category) { 
     $children_data = array(); 

     $children = $this->model_catalog_category->getCategories($category['category_id']); 

     foreach ($children as $child) { 
      $data = array(
       'filter_category_id' => $child['category_id'], 
       'filter_sub_category' => true 
      ); 

      $children_data[] = array(
       'category_id' => $child['category_id'], 
       'name'  => $child['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($data) . ')' : ''), 
       'href'  => $this->url->link('product/category', 'path=' . $category['category_id'] . '_' . $child['category_id']) 
      ); 

      if($cur_category_id && $cur_category_id == $category['category_id']){ 
       $this->data['heading_title'] = $category['name']; 
       $this->data['categories'][] = array(
        'category_id' => $child['category_id'], 
        'children' => array(), 
        'name'  => $child['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($data) . ')' : ''), 
        'href'  => $this->url->link('product/category', 'path=' . $category['category_id'] . '_' . $child['category_id']) 
       ); 
      } 
     } 

     $data = array(
      'filter_category_id' => $category['category_id'], 
      'filter_sub_category' => true 
     ); 
     /* 
     $this->data['categories'][] = array(
      'category_id' => $category['category_id'], 
      'name'  => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($data) . ')' : ''), 
      'children' => $children_data, 
      'href'  => $this->url->link('product/category', 'path=' . $category['category_id']) 
     ); */ 
    } 

참고 : 앞에서 만 하위 범주가 표시됩니다 귀하의 질문에 대한 코멘트를 추가하고 부모 범주에 추가 된 제품을 선택할 수있는 옵션이되지 않으므로.

좋은 하루 되세요 :) !!

+0

잘 작동하지만 모든 상위 카테고리에 대해 동일한 하위 카테고리를 보여줍니다. 나는 이것 [link] (http://www.ukplanettools.co.uk/power-tools.php)과 같은 것을 필요로한다. 카테고리 페이지를 확인하십시오. – Manish

+0

전체 foreach 섹션에 대한 답변을 업데이트했습니다. 확인해주십시오. –

+0

코드를 제공해 주셔서 감사합니다. 그러나이 [link] (http://microsolutionsind.com/demo/demo.html)를 확인하십시오. 여기 내 원하는 콘텐츠를 얻을 수 있습니다. – Manish

관련 문제