Opencart中的第三级类别

时间:2015-10-15 10:30:51

标签: php opencart categories opencart2.x

我的类别结构是:

Electronics
    -TV
       --LG
       --ONIDA
    -Fridge
       --Whirlpool
       --Videocon
    -Music Player
       --Sony
       --LG
Furniture
    -Wooden
       --Chair
       --Bed
    -Metal
       --Chair

此处主要类别Electronics, Furniture; 子类别TV, Fridge etc子子类别LG, Onida etc。那是我3 level categories. 我必须在main navigation menu in Opencart中显示这些内容。

但只显示Opencart main category and sub categories。 <{1}}不会显示。

所以我如何显示第三级别类别。这里我附上一张图片,告诉我的要求更清晰。 enter image description here

我的 Opencart版 2.0.3.1

修改

以下是显示类别菜单的代码。

  

目录\视图\主题\默认\模板\共同\ header.tpl

Third level category

1 个答案:

答案 0 :(得分:1)

  

注意:不建议在核心中进行直接更改   文件。您可以使vqmod进行相同的更改。这里给出的变化   在默认模板中进行测试,在其他模板中可能会有所不同   自定义主题。

(1)打开文件目录/ controller / common / header.php 并搜索

$children_data = array();

并在 之后写下代码

$children_lv3_data = array();

2)在相同文件替换

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

以下代码

$children_lv3 = $this->model_catalog_category->getCategories($child['category_id']);

if($children_lv3)
{    

    foreach ($children_lv3 as $child_lv3) 
    {
        $filter_data_lv3 = array(
        'filter_category_id'  => $child_lv3['category_id'],
        'filter_sub_category' => true
        );

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

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

}

else
{

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

3)打开文件目录/视图/主题/默认/模板/公共/标题.tpl 并搜索

<li><a href="<?php echo $child['href']; ?>"><?php echo $child['name']; ?></a></li>

并在其后面加上代码

<?php if(isset($child['children_lv3']) && count($child['children_lv3'])>0){ ?>
                            <ul> 
                               <?php foreach ($child['children_lv3'] as $child_lv3) { ?>
                               <li><a href="<?php echo $child_lv3['href']; ?>"><?php echo $child_lv3['name']; ?></a></li>
                                <?php  } ?>
                            </ul>
                        <?php } ?>