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

[Решено] Родительский пункт меню неактивный

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

Подскажите, как сделать родительский пункт меню неактивным (естественно клик на подкатегории работает в штатном режиме) , копать, как я понимаю надо в сторону /controller/common/header.php. 
Заранее спасибо за помощь

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


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

копать надо в стилях. Точнее создать стиль для например #menu > ul > li > div > ul  li  a.active

т.е смотрите вашу тему.

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


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

копать надо в стилях. Точнее создать стиль для например #menu > ul > li > div > ul  li  a.active

т.е смотрите вашу тему.

видимо неправильно описал ))) родительский пункт меню должен быть кликабельным только на открытие подкатегорий 

работать должно так:

1. жмем на родительскую категорию в главном меню навигации ---> открывается список подкатегорий (перехода на страницу не просходит)

2. жмем на подкатегорию ---> переходим на страницу подкатегории 

 

P. S. странно, что никто не задавался таким вопросом)))

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


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

аа тогда надо в сторону js копать. Просто обрабатывать onclick на пункте меню и добавлять display:block для div меню

В общем не очень сложная задача, если не справитесь.. помогу после выходных.

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


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

справился уже,  Tom дал "волшебный пендель"
 

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

меняем на 

<?php foreach ($categories as $category) { ?>	
    <li><?php echo $category['name']; ?>

 
остается поправить стили и вуа ля! 
P.S.
для 
 

 #menu > ul > li 
 

 
обязательно прописываем 

 

cursor: pointer;
 

так как это уже не ссылка)))

 
сразу для тех, кто все же намеревается вставить в меню категорию с ссылкой, это можно сделать обычным способом, о котором говорилось тут не раз: 

<div id="menu">
  <ul>
    <?php foreach ($categories as $category) { ?>	
    <li><?php echo $category['name']; ?>

      <?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 } ?>
          <?php } ?>
        </ul>
        <?php } ?>
      </div>
      <?php } ?>
    </li>
    <?php } ?>	
	<li><a href="ССЫЛКА">ПУНКТ МЕНЮ</a></li>
	<li><a href="ССЫЛКА">ПУНКТ МЕНЮ</a></li>
  </ul>
</div>
<?php } ?>


думаю, если найдутся желающие, пропишут это менее коряво, а если еще прописать условие и вывести в админку кнопку для категории "активно" / "неактивно"  будет очень славно)))
 

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


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

Решение не плохое, если вы не используете параллельно модуль категорий и отказались от хлебных крошек, т.к. помимо верхнего меню есть 1001 способ попасть в родительскую категорию. Не говоря уже о том что сами страницы родительских категорий никуда не денутся и если не принять меры, то попадут еще и в индекс поисковых систем.

 

Круто было бы найти / написать vqmod для решения этой задачи в полной мере.

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


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

А какой все таки файл править?

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


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

В моем случае установлен модуль Pav MegaMenu, я выбираю тип меню (Type) - URL. В значение прописываю javascript:void(0); И все. Родительский пункт меню не активен, но сами вложенные пункты работают.

 

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


Ссылка на сообщение
Поделиться на другие сайты
В 24.05.2013 в 09:46, Pascha сказал:

справился уже,  Tom дал "волшебный пендель"
 


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

меняем на 


<?php foreach ($categories as $category) { ?>	
    <li><?php echo $category['name']; ?>

 
остается поправить стили и вуа ля! 
P.S.
для 
 


 #menu > ul > li 
 

 
обязательно прописываем 

 


cursor: pointer;
 

так как это уже не ссылка)))

 
сразу для тех, кто все же намеревается вставить в меню категорию с ссылкой, это можно сделать обычным способом, о котором говорилось тут не раз: 

  Скрыть контент


<div id="menu">
  <ul>
    <?php foreach ($categories as $category) { ?>	
    <li><?php echo $category['name']; ?>

      <?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 } ?>
          <?php } ?>
        </ul>
        <?php } ?>
      </div>
      <?php } ?>
    </li>
    <?php } ?>	
	<li><a href="ССЫЛКА">ПУНКТ МЕНЮ</a></li>
	<li><a href="ССЫЛКА">ПУНКТ МЕНЮ</a></li>
  </ul>
</div>
<?php } ?>


думаю, если найдутся желающие, пропишут это менее коряво, а если еще прописать условие и вывести в админку кнопку для категории "активно" / "неактивно"  будет очень славно)))
 

а как для опенкарта третьего такое сделать? :)

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


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

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

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

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

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

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

Войти

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

Войти

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

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

×

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

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