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

Выделить активную категорию в горизонтальном меню ОС 2.3


Roma2016

Recommended Posts

В 12.02.2017 в 16:31, Pascha сказал:

<script type="text/javascript">
jQuery(document).ready(function($) {
var url=document.location.href;
$.each($("#menu a"),function(){
if(this.href==url){$(this).addClass('activeCSS');};
});
})(jQuery);
</script>
<style>
.activeCSS {
Font-weight:bold;
}
</style>

 

Попробовал, работает. Но выделяет только жирным ссылку. Хотелось бы и фон активной категории сделать другого цвета. Пробовал добавить background: #ff0000; не помогло.

 

 

 

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


  • 3 weeks later...

Вот вариант, который сработал у меня в ocStore 2.1.0.2.1:

в файле catalog\controller\common\header.php

после

$categories = $this->model_catalog_category->getCategories(0);

вставить

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;
        }

в том же файле после

$children_data[] = array(

вставить

'category_id'     => $child['category_id'], 

и после

$data['categories'][] = array(

вставить

'category_id'     => $category['category_id'],

в файле шаблона catalog\view\theme\default\template\common\header.tpl

заменить строчку

<li class="dropdown"><a href="<?php echo $category['href']; ?>" class="dropdown-toggle" data-toggle="dropdown"><?php echo $category['name']; ?></a>

на

<li class="dropdown <?php echo ($category['category_id'] == $category_id) ? 'active' : ''; ?>"><a href="<?php echo $category['href']; ?>" class="dropdown-toggle" data-toggle="dropdown"><?php echo $category['name']; ?></a>

там же чуть ниже эту

<li><a href="<?php echo $child['href']; ?>"><?php echo $child['name']; ?></a></li>

заменить на такую

<li <?php echo ($child['category_id'] == $child_id) ? 'class="active"' : ''; ?>><a href="<?php echo $child['href']; ?>"><?php echo $child['name']; ?></a></li>

и еще ниже эту:

<li><a href="<?php echo $category['href']; ?>"><?php echo $category['name']; ?></a></li>

меняем на такую

<li <?php echo ($category['category_id'] == $category_id) ? 'class="active"' : ''; ?>><a href="<?php echo $category['href']; ?>"><?php echo $category['name']; ?></a></li>

И теперь в стилях шаблона catalog\view\theme\default\stylesheet\stylesheet.css добавить стиль по вкусу, например так:

#menu .nav li.active {
    background-color: #FF0000;
}
#menu .nav li.active a{  
	color:#fff;
}

Цвета ставьте свои.

 

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


On 13.03.2017 at 2:31 PM, vadim said:

Теперь бы понять как выделить остальные ссылки в меню. например контакты и т.д.

Есть идеи у кого нибудь?

 

Указать в header.php

if(isset($this->request->get['route']) && ($this->request->get['route']  == 'information/contact')) {
    $data['contact_active'] = 'active';
 }else{
    $data['contact_active'] = '';
}

В header.tpl

<li <?php if($contact_active){ ?>class="<?php echo $contact_active; ?>"<?php } ?>><a href="<?php echo $contact; ?>"><?php echo $text_contact; ?></a></li>

 

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

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

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

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

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

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

Вхід

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

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

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

Important Information

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