Как поместить поле навигации под инфо-бар?

InstantCMS 2.X
#1 21 октября 2021 в 11:42

Ребята, подскажите решение — как поместить поле навигации под инфо-бар? А то иной раз вот такая байда получается некрасивая: 

Изображение

Я в коде не соображаю, но вырезать, скопировать, вставить смогу по инструкции. Прошу помощи!

Добавлено спустя 6 минут

2.14.3. Шаблон Modern.

#2 21 октября 2021 в 12:14

Я когда незнаю кода ломаю все с помощью  position: absolute или fixed 😁

#3 21 октября 2021 в 12:16

Я когда незнаю кода ломаю все с помощью  position: absolute или fixed 😁

Happy

Да поломать-то я смогу, дело нехитрое! ))) Не, просто навигации не место на этом месте, сорри за тавтологию… под инфо-баром — в самый раз!

#4 21 октября 2021 в 12:54

А разве это не виджет? Его нельзя разместить на другой позиции? Просто не сталкивался с ним, не в курсе. 

#5 21 октября 2021 в 12:58

А разве это не виджет? Его нельзя разместить на другой позиции? Просто не сталкивался с ним, не в курсе. 

Make

Это поле, и в настройках нет возможности отправить его под инфо-бар.

#6 21 октября 2021 в 13:49

Если это поле, то попробуйте вставить в default_item.tpl.php после

  1. <?php if (!empty($item['info_bar'])){ ?>
  2. <div class="info_bar">
  3. <?php foreach($item['info_bar'] as $bar){ ?>
  4. <div class="bar_item <?php echo !empty($bar['css']) ? $bar['css'] : ''; ?>" title="<?php html(!empty($bar['title']) ? $bar['title'] : ''); ?>">
  5. <?php if (!empty($bar['href'])){ ?>
  6. <a href="<?php echo $bar['href']; ?>"><?php echo $bar['html']; ?></a>
  7. <?php } else { ?>
  8. <?php echo $bar['html']; ?>
  9. <?php } ?>
  10. </div>
  11. <?php } ?>
  12. </div>
  13. <?php } ?>

эту конструкцию:

<?php echo $item['СИСТЕМНОЕ_ИМЯ_ПОЛЯ_НАВИГАЦИИ']; ?>

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

Но это решение навскидку, возможно придется это поле запихнуть в foreach. Опять же — поле я не видел, и ничего не могу сказать точно, лишь приблизительно

#7 21 октября 2021 в 15:10

Поле навигации вот это имеется в виду. 

Спасибо! Буду пробовать...

Добавлено спустя 58 минут

Make, безрезультатно. А, нет, кой-какой результат есть — появилась вот неведомая цифра «1». ) *показ в записи отключил...

Изображение

#8 21 октября 2021 в 15:19

А, нет, кой-какой результат есть — появилась вот неведомая цифра «1».

Викторыч

Хороший знак! Говорит о том, что такое поле в этом ТК есть и оно работает))

Поле должно быть активным, но показ его в записи выключите. Далее туда, где писал выше г-н Make, вставьте:

  1. <?php
  2. if(!empty($item['navigation'])){
  3. echo $fields['navigation']['handler']->setItem($item)->parse( $item['navigation'] );
  4. }
  5. ?>

Если юзаете отдельный шаблон для записей этого ТК, а не общий (т.е. знаете точно, что поле в этом ТК есть), условие можно не выставлять

#9 21 октября 2021 в 15:25

Шайтанама! Он появился! ) Э-ээ… насчет шаблона точно не знаю, поэтому оставлю как есть! Спасибо, Олег Васильевич я! )

Изображение

#10 3 января 2022 в 14:55

В версии 2.15.0 конструкция перестала работать, навигация не отображается. Вернулся к виду по-умолчанию, только поставил в настройках «Не участвовать в обтекании». В запись не лезет теперь, но, имхо, под инфо-баром навигация гораздо лучше смотрелась...

#11 3 января 2022 в 20:41

В версии 2.15.0 конструкция перестала работать, навигация не отображается. Вернулся к виду по-умолчанию, только поставил в настройках «Не участвовать в обтекании». В запись не лезет теперь, но, имхо, под инфо-баром навигация гораздо лучше смотрелась...

Викторыч

Теперь всё иначе.

1) Включите вывод поля в записи

2) После этой строчки вставьте:

  1. <?php if($field['name'] == 'navigation') { continue; } ?>

3) Код, который использовали ранее, замените на такой:

  1. <?php
  2. if(!empty($item['fields']['navigation'])){
  3. echo $fields['navigation']['handler']->setItem($item)->parse($item['fields']['navigation'] );
  4. }
  5. ?>

Должно работать, но хотелось бы таки увидеть ответ от спецов PHP

#12 3 января 2022 в 21:05

ок, навигация ушла вниз, под инфо-бар. Благодарю! )

Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.