Перейти к содержанию
Electr0n

[Решено] Подсвечивание при выборе раздела

Рекомендуемые сообщения

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

В данном случае мне нужно сделать в производителях

 

 

делаю так :

 

.box .box-content > ul > li a.active {
padding: 7px 8px 7px 10px;
background: #7B94BA;
}

 

Не получается. 

 

 

Нужно примерно вот так :

 

 

eL87mRXxVSA.jpg

 

 

В главном меню получилось. 

Поделиться сообщением


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

Конечно не получается.

У Вас для активной категории класс active не добавляется.

Нужно добавить условие для вывода категорий:

      <?php if ($category['category_id'] == $category_id) { ?>
      <li class="active"><a href=...>...</a>
        <?php } else { ?>
      <li><a href=...>...</a>
        <?php } ?>

Поделиться сообщением


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

Вот код который отвечает за вывод этих разделов.

Сделал так:

 

<div class="box category highlights">
<div class="box-heading"><span><?php echo $heading_title; ?></span></div>
<div class="box-content">
<ul id="accordion" class="box-category box-panel">
<?php foreach ($manufacturer_series as $manufacturer_serie) { ?>
<li class="active">
<a href="<?php echo $manufacturer_serie['href']; ?>"> <?php echo $manufacturer_serie['name']; ?></a>
</li>
<?php } ?>
</ul>
</div>
</div>

 

 

И в css:

 

 

.box .box-content > ul > li.active {
         background: #7B94BA;
}

Поделиться сообщением


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

Что-то не вижу <li class="active">

Поделиться сообщением


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

Я удалял. Теперь снова поставил. 

 

Что-то не вижу <li class="active">

Поделиться сообщением


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

Ну, теперь у вас все категории с классом active.

Вы внимательно посмотрите на условие, что я скинул.

Если id категории в списке совпадает с id текущей категории, выводить <li class="active">

В другом случае выводится <li>

Нужно сделать так же, только у вас не $category, а $manufacturer_serie, у которой тоже id должен быть.

Поделиться сообщением


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

Ну, теперь у вас все категории с классом active.

Вы внимательно посмотрите на условие, что я скинул.

Если id категории в списке совпадает с id текущей категории, выводить <li class="active">

В другом случае выводится <li>

Нужно сделать так же, только у вас не $category, а $manufacturer_serie, у которой тоже id должен быть.

Не могу понять. можете написать. что нужно добавить в код в моем случае ? 

Изменено пользователем Electr0n

Поделиться сообщением


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

Надо контроллер смотреть, я не знаю как у вас обзывается переменная, содержащая id.

Поделиться сообщением


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

Вот контроллер:

 

<?php  
class ControllerModuleManufacturerSeries extends Controller {
protected function index($setting) {
if (isset($this->request->get['manufacturer_id'])) {
$manufacturer_id = $this->request->get['manufacturer_id'];
 
$this->language->load('module/manufacturer_series');
 
    $this->data['heading_title'] = $this->language->get('heading_title');
 
$this->load->model('catalog/series');
 
$this->data['manufacturer_series'] = array();
 
$results = $this->model_catalog_series->getSeriesByManufacturerId($manufacturer_id);
 
foreach ($results as $result) {
$this->data['manufacturer_series'][] = array(
'series_id' => $result['series_id'],
'name' => $result['name'],
'href'         => $this->url->link('product/manufacturer/info', 'manufacturer_id=' . $manufacturer_id . '&series_id=' . $result['series_id'])
);
}
 
if (!empty($results)) {
if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/module/manufacturer_series.tpl')) {
$this->template = $this->config->get('config_template') . '/template/module/manufacturer_series.tpl';
} else {
$this->template = 'default/template/module/manufacturer_series.tpl';
}
 
$this->render();
}
}
  }
}
?>

Поделиться сообщением


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

Возможно как-то так:

      <?php if ($manufacturer_series['series_id'] == $manufacturer_id) { ?>
      <li class="active"><a href=...>...</a>
        <?php } else { ?>
      <li><a href=...>...</a>
        <?php } ?>

Поделиться сообщением


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

 

Возможно как-то так:

      <?php if ($manufacturer_series['series_id'] == $manufacturer_id) { ?>
      <li class="active"><a href=...>...</a>
        <?php } else { ?>
      <li><a href=...>...</a>
        <?php } ?>

Сделал так:

 

 

<div class="box category highlights">
<div class="box-heading"><span><?php echo $heading_title; ?></span></div>
<div class="box-content">
<ul id="accordion" class="box-category box-panel">
<?php if ($manufacturer_series['series_id'] == $manufacturer_id) { ?>
 
 
 <li class="active">
<a href="<?php echo $manufacturer_serie['href']; ?>"> <?php echo $manufacturer_serie['name']; ?></a>
</li>
 
<?php } else { ?>
 
<li>
<a href="<?php echo $manufacturer_serie['href']; ?>"> <?php echo $manufacturer_serie['name']; ?></a>
</li>
 <?php } ?>
 
<?php } ?>
</ul>
</div>
</div>

 

Выдает ошибку:

 

Parse error: syntax error, unexpected '}' in /home/azovsan/public_html/catalog/view/theme/default/template/module/manufacturer_series.tpl on line 19

Поделиться сообщением


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

Нижняя скобка <?php } ?> какое пхп условие закрывает?

Поделиться сообщением


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

Получается вот это <?php if ($manufacturer_series['series_id'] == $manufacturer_id) { ?>

 

Нижняя скобка <?php } ?> какое пхп условие закрывает?

Поделиться сообщением


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

Нет, она лишняя.

Поделиться сообщением


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

Все равно не хочет 

  • Notice: Undefined index: series_id in/home/azovsan/public_html/catalog/view/theme/default/template/module/manufacturer_series.tplon line 5Notice: Undefined variable: manufacturer_id in/home/azovsan/public_html/catalog/view/theme/default/template/module/manufacturer_series.tplon line 5

     

    Нет, она лишняя.

     

Поделиться сообщением


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

Скиньте в личку доступ по фтп, посмотрю.

Поделиться сообщением


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

Готово, стили настройте сами.

Поделиться сообщением


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

Готово, стили настройте сами.

Спасибо!

Все работает корректно! 

Поделиться сообщением


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

Для публикации сообщений создайте учётную запись или авторизуйтесь

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

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

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

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