Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Sign Up

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


Recommended Posts

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

Link to post
Share on other sites

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

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

Link to post
Share on other sites

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

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

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

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

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

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

 

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

Link to post
Share on other sites

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

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

Link to post
Share on other sites

справился уже,  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 } ?>


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

Link to post
Share on other sites

  • 9 months later...

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

 

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

Link to post
Share on other sites

  • 2 months later...
  • 2 years later...

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

 
Link to post
Share on other sites

  • 1 year later...
В 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 } ?>


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

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

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.