【发布时间】:2018-03-29 21:27:37
【问题描述】:
目前在 opencart 中,系统仅限于显示 2 个级别的类别。有谁知道获取所有子类别和完整 ul li 树的类?
例如:如果您曾经使用过 oscommerce,它将在侧面类别菜单中显示完整的子猫树,因为 opencart 仅限于两个级别。
默认代码是这样的
$categories = $this->model_catalog_category->getCategories(0);
foreach ($categories as $category) {
$children_data = array();
if ($category['category_id'] == $data['category_id']) {
$children = $this->model_catalog_category->getCategories($category['category_id']);
foreach($children as $child) {
$filter_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($filter_data) . ')' : ''),
'href' => $this->url->link('product/category', 'path=' . $category['category_id'] . '_' . $child['category_id'])
);
}
}
但是它只有两个级别,我正在寻找所有级别来构建手风琴菜单。
此外,我不是在找人来做这件事,(除非你愿意),但也许你可以为我指明正确的方向或指向可以实现这一目标的现有课程。
【问题讨论】:
-
没有任何类可以检索所有类别级别。要获取类别层次结构,您必须明确获取每个类别的每个级别。就像默认情况下它为每个类别获取一个级别的子类别一样,因此您必须获取每个子类别的子子类别。
标签: opencart opencart2.3 opencart-3