Как убрать или добавить выпадающее меню в топ меню?

InstantCMS 2.X
#1 24 февраля 2017 в 01:41
Хотелось бы понять, как в верхнем меню регулировать опцию вывода категорий внутри или выпадающим списком. Например в демо версии Instant cms пункты верхнего меню новости и статьи обладают выпадающим списком, а остальные пункты меню — нет. Как отменить выпадающий список в первых двух пунктах и сохранить при этом категории и вложенный в них контент(новости, статьи)? Так же, как наделить опцией выпадающего списка с категориями другие пункты меню?
Что-то не могу нигде найти сам, как-то всё не очевидно.
#2 24 февраля 2017 в 07:59
Админка-типы контента-новости. Снять галочки
#3 24 февраля 2017 в 11:15

ак отменить выпадающий список

@Razumdar
Я в разделе "Меню" просто убрал лишние вложенные пункты меню, а категории никуда не делись.

Так же, как наделить опцией выпадающего списка с категориями другие пункты меню?

@Razumdar
Так же. Только наоборот.
#5 25 февраля 2017 в 13:09


ак отменить выпадающий список

@Razumdar
Я в разделе "Меню" просто убрал лишние вложенные пункты меню, а категории никуда не делись.

Так же, как наделить опцией выпадающего списка с категориями другие пункты меню?

@Razumdar
Так же. Только наоборот.

Yar
Пунктов меню как раз и нету.
#6 25 февраля 2017 в 13:09


Админка-типы контента-новости. Снять галочки

Lora
А вот это помогло, хрен с ним пока буду без категорий
#7 25 февраля 2017 в 13:27

Пунктов меню как раз и нету.

@Razumdar
Как это нету. А куда бы они делись… Как я понял речь идёт о Главном Меню, а не О верхнем Меню, всё-таки. Если еще Главное Меню не редактировалось вами, то в разделе админки Меню там всё на своих полках, разобраться не сложно. В нужном пункте добавьте (будет выпадающее), а в не нужном уберите (не будет ничего выпадать, соответственно).

хрен с ним

@Razumdar
Когда на сайте много вещей под этой категорией, то же самое ответит и большинство пользователей. У вас же в требовании это:

сохранить при этом категории

@Razumdar
поэтому отключение категорий не выход, что ли…
#8 9 октября 2017 в 17:13
Подскажите пожалуйста.
  1.  
  2. <ul class="<?php echo $css_class; ?>">
  3.  
  4. <?php $last_level = 0; ?>
  5.  
  6. <?php foreach($menu as $id=>$item){ ?>
  7.  
  8. <?php for ($i=0; $i<($last_level - $item['level']); $i++) { ?>
  9. </li></ul>
  10. <?php } ?>
  11.  
  12. <?php if ($item['level'] <= $last_level) { ?>
  13. </li>
  14. <?php } ?>
  15.  
  16. <?php
  17.  
  18. $is_active = in_array($id, $active_ids);
  19.  
  20. $css_classes = array();
  21. if ($is_active) { $css_classes[] = 'active'; }
  22. if ($item['childs_count'] > 0) { $css_classes[] = 'folder'; }
  23. if (!empty($item['options']['class'])) { $css_classes[] = $item['options']['class']; }
  24.  
  25. $onclick = isset($item['options']['onclick']) ? $item['options']['onclick'] : false;
  26. $onclick = isset($item['options']['confirm']) ? "return confirm('{$item['options']['confirm']}')" : $onclick;
  27.  
  28. $target = isset($item['options']['target']) ? $item['options']['target'] : false;
  29. $data_attr = '';
  30. if (!empty($item['data'])) {
  31. foreach ($item['data'] as $key=>$val) {
  32. $data_attr .= 'data-'.$key.'="'.$val.'" ';
  33. }
  34. }
  35.  
  36. ?>
  37.  
  38. <li <?php if ($css_classes) { ?>class="<?php echo implode(' ', $css_classes); ?>"<?php } ?>>
  39. <?php if ($item['disabled']) { ?>
  40. <span class="item disabled"><?php html($item['title']); ?></span>
  41. <?php } else { ?>
  42. <a <?php if (!empty($item['title'])) {?>title="<?php echo html($item['title']); ?>"<?php } ?> class="item" <?php echo $data_attr; ?> href="<?php echo !empty($item['url']) ? htmlspecialchars($item['url']) : 'javascript:void(0)'; ?>" <?php if ($onclick) { ?>onclick="<?php echo $onclick; ?>"<?php } ?> <?php if ($target) { ?>target="<?php echo $target; ?>"<?php } ?>>
  43. <span class="wrap">
  44. <?php if (!empty($item['title'])) { html($item['title']); } ?>
  45. <?php if (isset($item['counter']) && $item['counter']){ ?>
  46. <span class="counter"><?php html($item['counter']); ?></span>
  47. <?php } ?>
  48. </span>
  49. </a>
  50. <?php } ?>
  51.  
  52. <?php if ($item['childs_count'] > 0) { ?><ul><?php } ?>
  53.  
  54. <?php $last_level = $item['level']; ?>
  55.  
  56. <?php } ?>
  57.  
  58. <?php for ($i=0; $i<$last_level; $i++) { ?>
  59. </li></ul>
  60. <?php } ?>
  61.  
Стандартный код меню. Задача до ужаса простая, но я не понимаю как ее решить.
<?php if ($item['childs_count'] > 0) { ?><ul><?php } ?>
вот тут, нужно присвоить класс active пример
  1.  
  2. <?php if ($item['childs_count'] > 0) { ?>
  3. <ul class="<?php
  4. if (УСЛОВИЕ...) {
  5. echo 'active';
  6. } else {
  7. echo 'nonestyle';
  8. ?>">
  9. <?php } ?>
  10.  
Проще говоря, у ребенка присвоен active класс, как его присвоить родителю, но так что бы только 1 родителю, а не всем у кого есть дети.
Хотя бы пошлите в нужном направлении.

*сори что не в своей теме, но только что зарегестрировавшись обнаружил, что писать могут люди с кармой 1+
#9 9 октября 2017 в 17:30

Проще говоря, у ребенка присвоен active класс, как его присвоить родителю, но так что бы только 1 родителю, а не всем у кого есть дети.

@RootGammer
Это легче на jquery сделать
$('.active').parent().addClass('active_ul');
#10 10 октября 2017 в 10:41


Проще говоря, у ребенка присвоен active класс, как его присвоить родителю, но так что бы только 1 родителю, а не всем у кого есть дети.

@RootGammer
Это легче на jquery сделать
$('.active').parent().addClass('active_ul');

Ris

Большое спасибо, но вариант не подходит (да он работает и в тривиальной задаче подошел бы без проблем).
Задача сделать это на пыхи(
#11 20 октября 2017 в 18:19

Задача сделать это на пыхи(

@RootGammer
Пожалуйста:
  1. echo "<script>$('.active').parent().addClass('active_ul');</script>";
laugh
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.