Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Категории (разделы) в подкатегории не отображаются в выпадающем меню.


ew4

Recommended Posts

Возможно вопрос детский. Сделал сайт на опенкарт 1.5 в первый раз. Посему ещё чайник.

Помогите.  Создал категории. В них подкатегории. В подкатегории создал ещё категории (разделы).  Все работает красиво. Ставишь курсор на категорию, выпадает список подкатегорий. Ставишь курсор на подкатегорию в которой есть  категории (разделы), и уже ничего не выпадает.  Как сделать что бы выпадало? То же самое в левом вертикальном поле с категориями. То есть и там то же категории (разделы) подкатегорий не показываются. А это плохо. Как это исправить?

В то же время карта сайта показывает и категории и подкатегории и разделы подкатегорий , все дерево как надо. 

Буду признателен за помощь.

Надіслати
Поділитися на інших сайтах


8 часов назад, ew4 сказал:

Ставишь курсор на подкатегорию в которой есть  категории (разделы), и уже ничего не выпадает. 

из коробки, выводятся категории только 2 уровня

если нужно вывести третий уровень,  нужно допиливать.

Надіслати
Поділитися на інших сайтах

11 часов назад, fanatic сказал:

из коробки, выводятся категории только 2 уровня

если нужно вывести третий уровень,  нужно допиливать.

Я понял что допиливать нужно. 

Вопрос как? 

Надіслати
Поділитися на інших сайтах


1 час назад, ew4 сказал:

Вопрос как? 

как пример, для верхнего меню

catalog/controller/common/header.php

foreach ($categories as $category) {
	if ($category['top']) {
		// Level 2
		$children_data = array();

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

		foreach ($children as $child) {
			// Level 3
			$children_data_1 = array();
			$children_1 = $this->model_catalog_category->getCategories($child['category_id']);
			
			
			foreach($children_1 as $child_1){
				$data = array(
					'filter_category_id'  => $child_1['category_id'],
					'filter_sub_category' => true
				);
				
				$product_total = $this->model_catalog_product->getTotalProducts($data);
				
				$children_data_1[] = array(
					'name'  => $child_1['name'] . ($this->config->get('config_product_count') ? ' (' . $product_total . ')' : ''),
					'href'  => $this->url->link('product/category', 'path=' . $category['category_id'] . '_' . $child['category_id'] . '_' . $child_1['category_id'])
				);	
			}
			
			$data = array(
				'filter_category_id'  => $child['category_id'],
				'filter_sub_category' => true
			);

			$product_total = $this->model_catalog_product->getTotalProducts($data);

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

		// Level 1
		$this->data['categories'][] = array(
			'name'     => $category['name'],
			'children' => $children_data,
			'column'   => $category['column'] ? $category['column'] : 1,
			'href'     => $this->url->link('product/category', 'path=' . $category['category_id'])
		);
	}
}

catalog/view/theme/default/template/common/header.tpl

<?php if ($categories) { ?>
<div id="menu">
  <ul>
    <?php foreach ($categories as $category) { ?>
    <li><a href="<?php echo $category['href']; ?>"><?php echo $category['name']; ?></a>
      <?php if ($category['children']) { ?>
      <div>
        <?php for ($i = 0; $i < count($category['children']);) { ?>
        <ul>
          <?php $j = $i + ceil(count($category['children']) / $category['column']); ?>
          <?php for (; $i < $j; $i++) { ?>
          <?php if (isset($category['children'][$i])) { ?>
          <li><a href="<?php echo $category['children'][$i]['href']; ?>"><?php echo $category['children'][$i]['name']; ?></a></li>
          <?php if($category['children'][$i]['children']){ ?>  
          <div>
              <?php foreach($category['children'][$i]['children'] as $cat_child){ ?> 
              <li><a href="<?php echo $cat_child['href']; ?>"><?php echo $cat_child['name']; ?></a></li>
              <?php } ?>
          </div>
          <?php } ?>
          <?php } ?>
          <?php } ?>
        </ul>
        <?php } ?>
      </div>
      <?php } ?>
    </li>
    <?php } ?>
  </ul>
</div>
<?php } ?>

 

Надіслати
Поділитися на інших сайтах

С левой колонкой категории разобрался. Взял тут   3 уровень меню в Opencart 1.5  .

Все работает отлично.

А вот с верхней колонкой в 1.5  не получается.  Вышеуказанные рекомендации не помогли.  Нашел подробно только для Opencart 2.х  3й уровень меню категорий товаров OpenCart 2x-2.2 . Первоисточник Third level category menu opencart &nbsp; Открытое меню категории третьего уровня

Что и в каком месте менять в файлах Opencart 1.5 не знаю. Сопоставить рекомендации от 2х для 1,5 не получается пока. Не хватает знаний и навыков.

Буду признателен за помощь.

Надіслати
Поділитися на інших сайтах


 открытое меню третьего уровня  Вот так бы сделать. Что бы при пробегании мышкой по  менюшке  2категории, при попадании на котегорию с подкатегориями, выпадала менюшка подкатегорий. 

Змінено користувачем ew4
Надіслати
Поділитися на інших сайтах


вот демка, по верхним категориям http://demosite3.best-byte.com/

вот демка, по боковым http://demosite3.best-byte.com/

Нужно что бы было так. Помогите плиз ибо эти решения плантые по 20 $ за каждое. По моему это слишком.

Заранее благодарен.

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.