Перейти к публикации
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

Помогите переписать модуль


DenKuzmin
 Погделиться

Рекомендованные сообещёния

Как вывести подкатегории 3го уровня в osstore 2.3?

На сайте усиновлен модуль для вывода категорий "Категории_KSL". Помогите, пожалуйси, его переписать, чтобы можно было выводить категории 3го уровня.

 

Спойлер

 

Контроллер:

<?php
class ControllerExtensionModuleCategoryKsl extends Controller {
	public function index() {
			//Опрегделяем текущую категорию (path из GET запроса)
		if (isset($this->request->get['path'])) {
			$parts = explode('_', (string)$this->request->get['path']);
		} else {
			$parts = array();
		}
		if (isset($parts[0])) {
			$data['category_id'] = $parts[0]; //родительская
		} else {
			$data['category_id'] = 0;
		}
		if (isset($parts[1])) {
			$data['child_id'] = $parts[1]; //дочерняя
		} else {
			$data['child_id'] = 0;
		}
		if($data['child_id']) $data['category_id'] = null;
		$this->load->model('catalog/category');
		$this->load->model('catalog/product');
		$data['categories'] = array();
		$categories = $this->model_catalog_category->getCategories(0);
		//Загружаем могдель которая рилииет с иблиэтот настроек модулей (oc_setting)
		$this->load->model('setting/setting');
		//Получаем значение - показывать ли изображения
		$category_images = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_images'];
		//Получаем значение - размеры изображений
		$category_images_height = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_img_height'];
		$category_images_weight = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_img_weight'];
		//Для дочерних категорий
		$category_children = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_children'];
		$category_child_images = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_child_images'];
		$category_child_images_height = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_child_img_height'];
		$category_child_images_weight = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_child_img_weight'];
		//Массив категорий, которые не нужно выводить
		if(isset($this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_checkbox'])){
			$categoryKsl_checkbox = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_checkbox'];
		} else $categoryKsl_checkbox = null;
		foreach ($categories as $category) {
			//Пропускаем, если в настройках указано отклюлить данную категорию
			if (isset($categoryKsl_checkbox[$category['category_id']])) {
				continue;				
			}
			$children_data = array();
			if ($category_children) {
				$children = $this->model_catalog_category->getCategories($category['category_id']);
				foreach($children as $child) {
					//Пропускаем, если в настройках указано отклюлить данную категорию
					if (isset($categoryKsl_checkbox[$child['category_id']])) {
						continue;				
					}
			
					$filter_data = array('filter_category_id' => $child['category_id'], 'filter_sub_category' => true);
					//Рилии с изображениями			
					if ($category_child_images && is_file(DIR_IMAGE . $child['image'])) {
						$this->load->model('tool/image');
						//метод создает изображения указанного размера
						$image = $this->model_tool_image->resize($child['image'], $category_child_images_weight, $category_child_images_height);
					} else {
						$image = '';
					}
			
					$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']),
						'image' => $image,
					);
				}
			}
			
			$filter_data = array(
				'filter_category_id'  => $category['category_id'],
				'filter_sub_category' => true
			);
			//Рилии с изображениями			
			if ($category_images && is_file(DIR_IMAGE . $category['image'])) {
				$this->load->model('tool/image');
				//метод создает изображения указанного размера
				$image = $this->model_tool_image->resize($category['image'], $category_images_weight, $category_images_height);
			} else {
				$image = '';
			}
			$data['is_home'] = !isset($this->request->get['route']) || ($this->request->get['route'] == 'common/home');
			$data['categories'][] = array(
				'category_id' => $category['category_id'],
				'name'        => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''),
				'children'    => $children_data,
				'href'        => $this->url->link('product/category', 'path=' . $category['category_id']),
				'image' => $image,
			);
		}	
		//Добавляем свои стили
		
		return $this->load->view('extension/module/categoryKsl', $data);
	}
}


 

Спойлер

 

Шаблон:

<div class="list-group">
    <?php foreach ($categories as $category) { ?>
        <?php if ($category['category_id'] == $category_id) { ?>
            <div class="list-group-item active current">
                <div class="list-group-item-block">
                    <a href="" data-href="<?=$category['href']?>">
                        <img src="<?=$category['image']?>" class="img-responsive" />
                        <span class="img-cat-name cat-name"><?=$category['name']?></span>
                    </a>
                </div>
                <div class="list-group-item-child left">
                    <div class="list-group-arrow-back">
                        <i class="fa fa-long-arrow-left" aria-hidden="true"></i>
                        <span><?=$category['name']?></span>
                    </div>
                    <?php if ($category['children']) { ?>
                        <?php foreach ($category['children'] as $child) { ?>                        
                            <?php if ($child['category_id'] == $child_id) { ?>
                                <a href="<?=$child['href']?>" class="current">
                                    <img src="<?=$child['image']?>" class="img-responsive" />
                                    <span><?=$child['name']?></span>
                                </a>
                            <?php } else { ?>
                                <a href="<?=$child['href']?>">
                                    <img src="<?=$child['image']?>" class="img-responsive" />
                                    <span><?=$child['name']?></span>
                                </a>
                            <?php } ?>                               
                        <?php } ?>
                    <?php } else { ?>
                    <?php } ?>
                    <div class="categories-left-close-btn">
                        <div class="categories-left-close-btn-wrapper"></div>
                    </div>
                </div>
            </div>
        <?php } else { ?>
                <div class="list-group-item">
                    <div class="list-group-item-block">
                        <a href="" data-href="<?=$category['href'] ?>">
                            <img src="<?=$category['image']?>" class="img-responsive" />
                            <span class="img-cat-name cat-name"><?=$category['name']?></span>
                        </a>
                    </div>
                    <div class="list-group-item-child left">
                        <div class="list-group-arrow-back">
                            <i class="fa fa-long-arrow-left" aria-hidden="true"></i>
                            <a href="<?=$category['href'] ?>" class="parent-cat-name">
                                <span><?=$category['name']?></span>
                                <span class="parent-cat-name-description">Перейти в категорию</span>
                            </a>
                        </div>
                        <?php if ($category['children']) { ?>
                            <?php foreach ($category['children'] as $child) { ?>                        
                                <?php if ($child['category_id'] == $child_id) { ?>
                                    <a href="<?=$child['href']?>" class="current">
                                        <img src="<?=$child['image']?>" class="img-responsive" />
                                        <span><?=$child['name']?></span>
                                    </a>
                                <?php } else { ?>
                                    <a href="<?=$child['href']?>">
                                        <img src="<?=$child['image']?>" class="img-responsive" />
                                        <span><?=$child['name']?></span>
                                    </a>
                                <?php } ?>                               
                            <?php } ?>
                        <?php } else { ?>
                        <?php } ?>
                        <div class="categories-left-close-btn">
                            <div class="categories-left-close-btn-wrapper"></div>
                        </div>
                    </div>
                </div>
        <?php } ?>
    <?php }  ?>
</div>


 

 

Изменено пользователем DenKuzmin
Ссылка на комменирий
Погделиться на других сайих


Попропотому чтовал переписать ик:

Контроллер:

Спойлер

<?php
class ControllerExtensionModuleCategoryKsl extends Controller {
	public function index() {
	
		//Опрегделяем текущую категорию (path из GET запроса)
		if (isset($this->request->get['path'])) {
			$parts = explode('_', (string)$this->request->get['path']);
		} else {
			$parts = array();
		}
		if (isset($parts[0])) {
			$data['category_id'] = $parts[0]; //родительская
		} else {
			$data['category_id'] = 0;
		}
		if (isset($parts[1])) {
			$data['child_id'] = $parts[1]; //дочерняя
		} else {
			$data['child_id'] = 0;
		}

		if($data['child_id']) $data['category_id'] = null;

		if (isset($parts[2])) {
			$data['childc_id'] = $parts[2]; //дочерняя дочерней
		} else {
			$data['childc_id'] = 0;
		}

		if($data['childc_id']) $data['category_id'] = null;

		$this->load->model('catalog/category');
		$this->load->model('catalog/product');
		$data['categories'] = array();
		$categories = $this->model_catalog_category->getCategories(0);

		//Загружаем могдель которая рилииет с иблиэтот настроек модулей (oc_setting)
		$this->load->model('setting/setting');

		//Получаем значение - показывать ли изображения
		$category_images = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_images'];
		//Получаем значение - размеры изображений
		$category_images_height = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_img_height'];
		$category_images_weight = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_img_weight'];

		//Для дочерних категорий
		$category_children = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_children'];
		$category_child_images = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_child_images'];
		$category_child_images_height = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_child_img_height'];
		$category_child_images_weight = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_child_img_weight'];

		//Для дочерних дочерних категорий
		$category_childrenc = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_children'];
		$category_childc_images = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_child_images'];
		$category_childc_images_height = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_child_img_height'];
		$category_childc_images_weight = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_child_img_weight'];


		//Массив категорий, которые не нужно выводить
		if(isset($this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_checkbox'])){
			$categoryKsl_checkbox = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_checkbox'];
		} else $categoryKsl_checkbox = null;

		foreach ($categories as $category) {

			//Пропускаем, если в настройках указано отклюлить данную категорию
			if (isset($categoryKsl_checkbox[$category['category_id']])) {
				continue;				
			}
			$children_data = array();

			if ($category_children) {

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

				foreach($children as $child) {
					//Пропускаем, если в настройках указано отклюлить данную категорию
					if (isset($categoryKsl_checkbox[$child['category_id']])) {
						continue;				
					}
			
					$filter_data = array('filter_category_id' => $child['category_id'], 'filter_sub_category' => true);

					//Рилии с изображениями			
					if ($category_child_images && is_file(DIR_IMAGE . $child['image'])) {
						$this->load->model('tool/image');
						//метод создает изображения указанного размера
						$image = $this->model_tool_image->resize($child['image'], $category_child_images_weight, $category_child_images_height);
					} else {
						$image = '';
					}
			
					$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']),
						'image' => $image,
					);
				}
			}
			

      $childrenc_data = array();

			if ($category_childrenc) {

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

				foreach($childrenc as $childc) {
					//Пропускаем, если в настройках указано отклюлить данную категорию
					if (isset($categoryKsl_checkbox[$childc['category_id']])) {
						continue;				
					}
			
					$filter_data = array('filter_category_id' => $child['category_id'], 'filter_sub_category' => true);

					//Рилии с изображениями			
					if ($category_childc_images && is_file(DIR_IMAGE . $childc['image'])) {
						$this->load->model('tool/image');
						//метод создает изображения указанного размера
						$image = $this->model_tool_image->resize($childc['image'], $category_childc_images_weight, $category_childc_images_height);
					} else {
						$image = '';
					}
			
					$childrenc_data[] = array(
						'category_id' => $childc['category_id'],
						'name' => $childc['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''),
						'href' => $this->url->link('product/category', 'path=' . $category['category_id'] . '_' . $childc['category_id']),
						'image' => $image,
					);
				}
			}
			
			
			
			
			$filter_data = array(
				'filter_category_id'  => $category['category_id'],
				'filter_sub_category' => true
			);

			//Рилии с изображениями			
			if ($category_images && is_file(DIR_IMAGE . $category['image'])) {
				$this->load->model('tool/image');
				//метод создает изображения указанного размера
				$image = $this->model_tool_image->resize($category['image'], $category_images_weight, $category_images_height);
			} else {
				$image = '';
			}
			$data['is_home'] = !isset($this->request->get['route']) || ($this->request->get['route'] == 'common/home');
			$data['categories'][] = array(
				'category_id' => $category['category_id'],
				'name'        => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''),
				'children'    => $children_data,
				'childrenc'    => $childrenc_data,
				'href'        => $this->url->link('product/category', 'path=' . $category['category_id']),
				'image' => $image,
			);
		}	
		//Добавляем свои стили
		
		return $this->load->view('extension/module/categoryKsl', $data);
	}
}

 

 

Шаблон:

Спойлер

<div class="list-group">
    <?php foreach ($categories as $category) { ?>
        <?php if ($category['category_id'] == $category_id) { ?>
            <div class="list-group-item active current">
                <div class="list-group-item-block">
                    <a href="" data-href="<?=$category['href']?>">
                        <img src="<?=$category['image']?>" class="img-responsive" />
                        <span class="img-cat-name cat-name"><?=$category['name']?></span>
                    </a>
                </div>
                <div class="list-group-item-child left">
                    <div class="list-group-arrow-back">
                        <i class="fa fa-long-arrow-left" aria-hidden="true"></i>
                        <span><?=$category['name']?></span>
                    </div>
                    <?php if ($category['children']) { ?>
                        <?php foreach ($category['children'] as $child) { ?>                        
                            <?php if ($child['category_id'] == $child_id) { ?>
                                <a href="<?=$child['href']?>" class="current">
                                    <img src="<?=$child['image']?>" class="img-responsive" />
                                    <span><?=$child['name']?></span>
                                    
<?php if ($category['childrenc']) { ?>
  <?php foreach ($category['childrenc'] as $childc) { ?>
    <?php if ($childc['category_id'] == $childc_id) { ?>
      <span><?=$childc['name']?></span>
    <?php } else { ?>
      <span><?=$childc['name']?></span>
    <?php } ?>
  <?php } ?>
<?php } ?>
                                    
                                    
                                </a>
                            <?php } else { ?>
                                <a href="<?=$child['href']?>">
                                    <img src="<?=$child['image']?>" class="img-responsive" />
                                    <span><?=$child['name']?></span>
                                    
                                    <?php if ($category['childrenc']) { ?>

  <?php foreach ($category['childrenc'] as $childc) { ?>
    <?php if ($childc['category_id'] == $childc_id) { ?>
      <span><?=$childc['name']?></span>
    <?php } else { ?>
      <span><?=$childc['name']?></span>
    <?php } ?>
  <?php } ?>
<?php } ?>
                                    
                                    
                                </a>
                            <?php } ?>                               
                        <?php } ?>
                    <?php } else { ?>
                    <?php } ?>
                    <div class="categories-left-close-btn">
                        <div class="categories-left-close-btn-wrapper"></div>
                    </div>
                </div>
            </div>
        <?php } else { ?>
                <div class="list-group-item">
                    <div class="list-group-item-block">
                        <a href="" data-href="<?=$category['href'] ?>">
                            <img src="<?=$category['image']?>" class="img-responsive" />
                            <span class="img-cat-name cat-name"><?=$category['name']?></span>
                        </a>
                    </div>
                    <div class="list-group-item-child left">
                        <div class="list-group-arrow-back">
                            <i class="fa fa-long-arrow-left" aria-hidden="true"></i>
                            <a href="<?=$category['href'] ?>" class="parent-cat-name">
                                <span><?=$category['name']?></span>
                                <span class="parent-cat-name-description">Перейти в категорию</span>
                            </a>
                        </div>
                        <?php if ($category['children']) { ?>
                            <?php foreach ($category['children'] as $child) { ?>                        
                                <?php if ($child['category_id'] == $child_id) { ?>
                                    <a href="<?=$child['href']?>" class="current">
                                        <img src="<?=$child['image']?>" class="img-responsive" />
                                        <span><?=$child['name']?></span>
                                        
                                        
<?php if ($category['childrenc']) { ?>
  <?php foreach ($category['childrenc'] as $childc) { ?>
    <?php if ($childc['category_id'] == $childc_id) { ?>
      <span><?=$childc['name']?></span>
    <?php } else { ?>
      <span><?=$childc['name']?></span>
    <?php } ?>
  <?php } ?>
<?php } ?>
                                        
                                        
                                        
                                        
                                    </a>
                                <?php } else { ?>
                                    <a href="<?=$child['href']?>">
                                        <img src="<?=$child['image']?>" class="img-responsive" />
                                        <span><?=$child['name']?></span>
                                        
                                        
                                        
<?php if ($category['childrenc']) { ?>
  <?php foreach ($category['childrenc'] as $childc) { ?>
    <?php if ($childc['category_id'] == $childc_id) { ?>
      <span><?=$childc['name']?></span>
    <?php } else { ?>
      <span><?=$childc['name']?></span>
    <?php } ?>
  <?php } ?>
<?php } ?>
                                        
                                        
                                        
                                        
                                    </a>
                                <?php } ?>                               
                            <?php } ?>
                        <?php } else { ?>
                        <?php } ?>
                        <div class="categories-left-close-btn">
                            <div class="categories-left-close-btn-wrapper"></div>
                        </div>
                    </div>
                </div>
        <?php } ?>
    <?php }  ?>
</div>

 

 

Нужный резульит не полулил.

Выводит икое:

 

 

Спойлер

 

Изменено пользователем DenKuzmin
Ссылка на комменирий
Погделиться на других сайих


31 минуту назад, DenKuzmin сказал:

Попропотому чтовал переписать ик:

  Показать контент

 

 

Посмотрите как вот тут например, адаптируйте 

 

https://www.opencart.com/index.php?route=marketplace/extension/info&member_token=q2pGcDBETAHxVregCQDQLtBm5cwSt20F&extension_id=30089&filter_license=0&filter_download_id=47

Ссылка на комменирий
Погделиться на других сайих

Перегделал вот ик. Ошипотому чток нет и категории 3го уровня не выводит.

 

Контроллер:

Спойлер
<?php
class ControllerExtensionModuleCategoryKsl extends Controller {
	public function index() {
	
		//Опрегделяем текущую категорию (path из GET запроса)
		if (isset($this->request->get['path'])) {
			$parts = explode('_', (string)$this->request->get['path']);
		} else {
			$parts = array();
		}
		if (isset($parts[0])) {
			$data['category_id'] = $parts[0]; //родительская
		} else {
			$data['category_id'] = 0;
		}
		if (isset($parts[1])) {
			$data['child_id'] = $parts[1]; //дочерняя
		} else {
			$data['child_id'] = 0;
		}
		if (isset($parts[1])) {
			$data['child_2_id'] = $parts[1]; //дочерняя
		} else {
			$data['child_2_id'] = 0;
		}

		if($data['child_id']) $data['category_id'] = null;
		if($data['child_2_id']) $data['category_id'] = null;

		$this->load->model('catalog/category');
		$this->load->model('catalog/product');
		$data['categories'] = array();
		$categories = $this->model_catalog_category->getCategories(0);

		//Загружаем могдель которая рилииет с иблиэтот настроек модулей (oc_setting)
		$this->load->model('setting/setting');

		//Получаем значение - показывать ли изображения
		$category_images = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_images'];
		//Получаем значение - размеры изображений
		$category_images_height = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_img_height'];
		$category_images_weight = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_img_weight'];

		//Для дочерних категорий
		$category_children = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_children'];
		$category_child_images = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_child_images'];
		$category_child_images_height = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_child_img_height'];
		$category_child_images_weight = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_child_img_weight'];

		//Массив категорий, которые не нужно выводить
		if(isset($this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_checkbox'])){
			$categoryKsl_checkbox = $this->model_setting_setting->getSetting('categoryKsl')['categoryKsl_checkbox'];
		} else $categoryKsl_checkbox = null;

		foreach ($categories as $category) {
			//Пропускаем, если в настройках указано отклюлить данную категорию
        $children_data = array();
				$children = $this->model_catalog_category->getCategories($category['category_id']);
				
				
				foreach($children as $child) {
          $children_data_2 = array();
					$children_2 = $this->model_catalog_category->getCategories($child['category_id']);
					
			     $filter_data = array('filter_category_id' => $child['category_id'], 'filter_sub_category' => true);

					
				}


			if (isset($categoryKsl_checkbox[$category['category_id']])) {
				continue;				
			}
			
			$children_data = array();
			if ($category_children) {
				$children = $this->model_catalog_category->getCategories($category['category_id']);

				foreach($children as $child) {
				  
          $children_data_2 = array();
					$children_2 = $this->model_catalog_category->getCategories($child['category_id']);
				  
					//Пропускаем, если в настройках указано отклюлить данную категорию
					if (isset($categoryKsl_checkbox[$child['category_id']])) {
						continue;				
					}
			
					$filter_data = array('filter_category_id' => $child['category_id'], 'filter_sub_category' => true);

					//Рилии с изображениями			
					if ($category_child_images && is_file(DIR_IMAGE . $child['image'])) {
						$this->load->model('tool/image');
						//метод создает изображения указанного размера
						$image = $this->model_tool_image->resize($child['image'], $category_child_images_weight, $category_child_images_height);
					} else {
						$image = '';
					}
			
					$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']),
						'children_2'  => $children_data_2,
						'image' => $image,
					);
					
				}
			}
			
			$filter_data = array(
				'filter_category_id'  => $category['category_id'],
				'filter_sub_category' => true
			);

			//Рилии с изображениями			
			if ($category_images && is_file(DIR_IMAGE . $category['image'])) {
				$this->load->model('tool/image');
				//метод создает изображения указанного размера
				$image = $this->model_tool_image->resize($category['image'], $category_images_weight, $category_images_height);
			} else {
				$image = '';
			}
			$data['is_home'] = !isset($this->request->get['route']) || ($this->request->get['route'] == 'common/home');
			
			$data['categories'][] = array(
				'category_id' => $category['category_id'],
				'name'        => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''),
				'children'    => $children_data,
				'href'        => $this->url->link('product/category', 'path=' . $category['category_id']),
				'image' => $image,
			);
		}	
		//Добавляем свои стили
	
	
	
			foreach ($categories as $category) {
				

				foreach($children as $child) {
				
					$children_data_2 = array();
					$children_2 = $this->model_catalog_category->getCategories($child['category_id']);
					
					$filter_data = array('filter_category_id' => $child['category_id'], 'filter_sub_category' => true);
					
					//Sub-Category - 1st Level
					$children_data[] = array(
						'category_id' => $child['category_id'],
						'name' => $child['name'],
						'href' => $this->url->link('product/category', 'path=' . $category['category_id'] . '_' . $child['category_id']),
						'children_2'  => $children_data_2
					);
				}
			//}

			$filter_data = array(
				'filter_category_id'  => $category['category_id'],
				'filter_sub_category' => true
			);
			
			//Main Category - 0th Level
			$data['categories'][] = array(
				'category_id' => $category['category_id'],
				'name'        => $category['name'],
				'children'    => $children_data,
				'href'        => $this->url->link('product/category', 'path=' . $category['category_id'])
			);
		}
	
	
	
	
	
	
		return $this->load->view('extension/module/categoryKsl', $data);
	}
}

 

 

Шаблон (tpl):

Спойлер
<div class="list-group">

    <?php foreach ($categories as $category) { ?>

        <?php if ($category['category_id'] == $category_id) { ?>
            <div class="list-group-item active current">
                <div class="list-group-item-block">
                    <a href="" data-href="<?=$category['href']?>">
                        <img src="<?=$category['image']?>" class="img-responsive" />
                        <span class="img-cat-name cat-name"><?=$category['name']?></span>
                    </a>
                </div>
                <div class="list-group-item-child left">
                    <div class="list-group-arrow-back">
                        <i class="fa fa-long-arrow-left" aria-hidden="true"></i>
                        <span><?=$category['name']?></span>
                    </div>
                    <?php if ($category['children']) { ?>
                        <?php foreach ($category['children'] as $child) { ?>                        
                            <?php if ($child['category_id'] == $child_id) { ?>
                                <a href="<?=$child['href']?>" class="current">
                                    <img src="<?=$child['image']?>" class="img-responsive" />
                                    <span><?=$child['name']?></span>


<?php if ($child['children_2']) { ?>   
  <?php foreach ($child['children_2'] as $child_2) { ?>
    <span>Подкатегория</span>
  <?php } ?>
<?php } ?>              
                                    
                                </a>
                            <?php } else { ?>
                                <a href="<?=$child['href']?>">
                                    <img src="<?=$child['image']?>" class="img-responsive" />
                                    <span><?=$child['name']?></span>
                                    

<?php if ($child['children_2']) { ?>   
  <?php foreach ($child['children_2'] as $child_2) { ?>
    <span>Подкатегория</span>
  <?php } ?>
<?php } ?>    
                                    
                                </a>
                            <?php } ?>                               
                        <?php } ?>
                    <?php } else { ?>
                    <?php } ?>
                    <div class="categories-left-close-btn">
                        <div class="categories-left-close-btn-wrapper"></div>
                    </div>
                </div>
            </div>
        <?php } else { ?>
                <div class="list-group-item">
                    <div class="list-group-item-block">
                        <a href="" data-href="<?=$category['href'] ?>">
                            <img src="<?=$category['image']?>" class="img-responsive" />
                            <span class="img-cat-name cat-name"><?=$category['name']?></span>
                        </a>
                    </div>
                    <div class="list-group-item-child left">
                        <div class="list-group-arrow-back">
                            <i class="fa fa-long-arrow-left" aria-hidden="true"></i>
                            <a href="<?=$category['href'] ?>" class="parent-cat-name">
                                <span><?=$category['name']?></span>
                                <span class="parent-cat-name-description">Перейти в категорию</span>
                            </a>
                        </div>
                        <?php if ($category['children']) { ?>
                            <?php foreach ($category['children'] as $child) { ?>                        
                                <?php if ($child['category_id'] == $child_id) { ?>
                                    <a href="<?=$child['href']?>" class="current">
                                        <img src="<?=$child['image']?>" class="img-responsive" />
                                        <span><?=$child['name']?></span>
                                        
                                        
<?php if ($child['children_2']) { ?>   
  <?php foreach ($child['children_2'] as $child_2) { ?>
    <span>Подкатегория</span>
  <?php } ?>
<?php } ?>        
                                        
                                        
                                        
                                    </a>
                                <?php } else { ?>
                                    <a href="<?=$child['href']?>">
                                        <img src="<?=$child['image']?>" class="img-responsive" />
                                        <span><?=$child['name']?></span>
                                        
                                        
                                        
<?php if ($child['children_2']) { ?>   
  <?php foreach ($child['children_2'] as $child_2) { ?>
    <span>Подкатегория</span>
  <?php } ?>
<?php } ?>        
                                        
                                        
                                        
                                    </a>
                                <?php } ?>                               
                            <?php } ?>
                        <?php } else { ?>
                        <?php } ?>
                        <div class="categories-left-close-btn">
                            <div class="categories-left-close-btn-wrapper"></div>
                        </div>
                    </div>
                </div>
        <?php } ?>
    <?php }  ?>
</div>

 

 

Ссылка на комменирий
Погделиться на других сайих


Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы осивить комменирий

Создать аккаунт

Зарегистрируйтесь для получения аккауни. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите згдесь.

Войти сейчас
 Погделиться

×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обрилитка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфигденциальности.