Доброго времени суток, столкнулся с проблемой OpenCart Version 2.3.0.2
При адаптивном дизайне сайта на opencart при разрешении меньше 768 категории скрываются, чтобы они отобразились необходимо убрать hidden-xs в этой строчке:
<aside id="column-left" class="col-sm-3 hidden-xs">
И все категории отображаются на устройствах меньше 768 разрешением
Но если много категорий, то получается очень длинная колбаса
Поэтому решил создать дополнительную кнопку , такую же как для сворачивания главного меню, при нажатии на которую у нас во всплывающем окне отображаются Главная Стастьи и т.д, только для категорий (см. фото)
Но столкнулся с проблемой не могу вызвать отображение категорий, перерыл весь инет ничего подобного не встречал, пробовал вставить кусок кода
В header.tpl создал кнопку и хотелось бы чтобы при ее нажатии выскакивало меню с категориями.
Пробовал сделать так , но ничего не вышло
Добавил кнопку в header.tpl ,вставил содержимое файла category.tpl, который формирует list-group, но ничего не происходит, кнопка раскрывается, но там пусто
<div class="navbar-header"><span class="toggle-top-text hidden-lg hidden-md hidden-sm"><?php echo $text_category; ?>:</span>
<button type="button" class="btn btn-navbar navbar-toggle" data-toggle="collapse" data-target=".navbar-ex2-collapse"><i class="fa fa- bars"></i></button>
</div>
<div class="collapse navbar-collapse2 navbar-ex2-collapse ">
<div class="list-group">
<?php foreach ($categories as $category) { ?>
<?php if ($category['category_id'] == $category_id) { ?>
<a href="<?php echo $category['href']; ?>" class="list-group-item active"><?php echo $category['name']; ?></a>
<?php if ($category['children']) { ?>
<?php foreach ($category['children'] as $child) { ?>
<?php if ($child['category_id'] == $child_id) { ?>
<a href="<?php echo $child['href']; ?>" class="list-group-item active"> - <?php echo $child['name']; ?></a>
<?php } else { ?>
<a href="<?php echo $child['href']; ?>" class="list-group-item"> - <?php echo $child['name']; ?></a>
<?php } ?>
<?php } ?>
<?php } ?>
<?php } else { ?>
<a href="<?php echo $category['href']; ?>" class="list-group-item"><?php echo $category['name']; ?></a>
<?php } ?>
<?php } ?>
</div>
Если вставляю
<div class="list-group">
<a href="//localhost:3000/apple-iphone-6s" class="list-group-item">Apple iPhone 6s</a>
<a href="//localhost:3000/apple-iphone-6s-plus" class="list-group-item">Apple iPhone 6s Plus</a>
<a href="//localhost:3000/apple-iphone-6" class="list-group-item">Apple iPhone 6</a>
<a href="//localhost:3000/apple-iphone-6-plus" class="list-group-item">Apple iPhone 6 Plus</a>
<a href="//localhost:3000/apple-iphone-5s" class="list-group-item">Apple iPhone 5s</a>
<a href="//localhost:3000/apple-watch" class="list-group-item">Apple Watch</a>
<a href="//localhost:3000/skidki" class="list-group-item">Скидки</a>
</div>
То при нажатии на кнопку отображается list-group как я и хочу, но так не правильно, потому что при добавлении или редактировании категорий через админку ничего не измениться
Что нужно поправить в этом куске кода чтобы он вывел категории в header.tpl при нажатии на кнопку? Ну или все проще можетя не то что нужно вставляю и не правильно вызываю list-group
<div class="list-group">
<?php foreach ($categories as $category) { ?>
<?php if ($category['category_id'] == $category_id) { ?>
<a href="<?php echo $category['href']; ?>" class="list-group-item active"><?php echo $category['name']; ?></a>
<?php if ($category['children']) { ?>
<?php foreach ($category['children'] as $child) { ?>
<?php if ($child['category_id'] == $child_id) { ?>
<a href="<?php echo $child['href']; ?>" class="list-group-item active"> - <?php echo $child['name']; ?></a>
<?php } else { ?>
<a href="<?php echo $child['href']; ?>" class="list-group-item"> - <?php echo $child['name']; ?></a>
<?php } ?>
<?php } ?>
<?php } ?>
<?php } else { ?>
<a href="<?php echo $category['href']; ?>" class="list-group-item"><?php echo $category['name']; ?></a>
<?php } ?>
<?php } ?>
</div>
Принт прилагаю то что я имею ввиду
Ошибок не выдает, но если убрать строчку
<?php foreach ($categories as $category) { ?>
То выдает ошибки
Notice: Undefined variable: category in E:\OpenServer\domains\opencart.loc\catalog\view\theme\apple\template\common\header.tpl on line 119Notice: Undefined variable: category_id in E:\OpenServer\domains\opencart.loc\catalog\view\theme\apple\template\common\header.tpl on line 119 Notice: Undefined variable: category in E:\OpenServer\domains\opencart.loc\catalog\view\theme\apple\template\common\header.tpl on line 120 Notice: Undefined variable: category in E:\OpenServer\domains\opencart.loc\catalog\view\theme\apple\template\common\header.tpl on line 121
Я так понимаю надо создать модификатор чтобы эти переменные появились в header.tpl
Модификатор создаю, бросаю туда все переменные из category.php, но скорее всего что то не так делаю потомучто появляется еще куча ошибок
Это то что я хочу добиться, пока получилось только вставкой <div class="list-group">
Помогите советом, мучаюсь уже вторые сутки, так ни к чему и не пришел
Пните в нужном направлении пожалуйста.
Это отображается при нажатии верхнего значка