0 Пользователей и 1 Гость просматривают эту тему.
  • 15 Ответов
  • 493 Просмотров
*

timssky

  • Захожу иногда
  • 320
  • 0 / 0
Стоит шаблон от yootheme, при сжатии экрана позиция sidebar переноситься с левой части вниз под контент. А нужно чтобы была над контентом. 



Сайт
Спойлер
[свернуть]

Как это реализовать ?
*

timssky

  • Захожу иногда
  • 320
  • 0 / 0
Это я нашел) вопрос только где это поменять
*

timssky

  • Захожу иногда
  • 320
  • 0 / 0
Ну это не в CSS правиться, в PHP я правильно понимаю ?
*

effrit

  • Легенда
  • 8865
  • 978 / 9
  • effrit.com
эээ. я думал, после 300 сообщений автоматом люди начинают понимать, где чего искать  ;D
да, в папке шаблона index.php обычно, но в сложных может раскидано быть по файликам.
*

timssky

  • Захожу иногда
  • 320
  • 0 / 0
Нашел в файле sidebar.php   ;D

Код
<?php
$sidebar = $theme->get('sidebar', []);
$id = 'tm-sidebar';
$class = ["tm-sidebar uk-width-{$sidebar['width']}@{$sidebar['breakpoint']}"];
if ($sidebar['first']) {
    $class[] = "uk-flex-first@{$sidebar['breakpoint']}";
}
?>
<aside<?= $this->attrs(compact('id', 'class'))?>>
    <jdoc:include type="modules" name="sidebar" style="grid-stack" />
</aside>

Почти ничего не понимаю в PHP но методом проб и ошибок убрал @{$sidebar['breakpoint']} в двух местах все и заработало.


Теперь нужно сделать чтобы при сжатии экрана, меню превращалось в мобильное (как и основное при сжатии) как это реализовать ?

Я так понимаю в этом же файле прописать нужно нечто типа @{css класс мобильного меню}   ^-^
*

timssky

  • Захожу иногда
  • 320
  • 0 / 0
*

lesh1j

  • Захожу иногда
  • 257
  • 35 / 0
up
основное меню не "превращается" в мобильное и "прописать" одной строчкой тут не получится. Основное меню становится скрытым при уменьшении экрана, на его месте появляется кнопка, которая раскрывает "мобильное" меню, которое по умолчанию так же скрытое. Вот тоже самое вам нужно и с меню каталога сделать. То есть сделать еще одно "выезжающее меню" и кнопку, которая его будет раскрывать, по умолчанию их сделать скрытыми и медиа запросами при уменьшении экрана скрывать само меню и показывать кнопку раскрывающую offcanvas меню
*

timssky

  • Захожу иногда
  • 320
  • 0 / 0
Как сложно все.  Если точнее речь даже не о самом меню идет, а о всей позиции sidebar целиком.  Чтобы в мобильной версии она отображалась вот в таком виде.

https://getuikit.com/docs/offcanvas#offcanvas-usage
*

timssky

  • Захожу иногда
  • 320
  • 0 / 0
*

timssky

  • Захожу иногда
  • 320
  • 0 / 0
*

kern.USR

  • Давно я тут
  • 805
  • 61 / 1
Может вы попробуете почитать документацию к yootheme и разобраться, как там позиции модулей двигаются?
*

timssky

  • Захожу иногда
  • 320
  • 0 / 0
Это очень сложно для меня. Может есть кто уже сталкивался с подобным вопросом. Есть тут пользователи новых шаблонов yootheme?
*

kern.USR

  • Давно я тут
  • 805
  • 61 / 1
Это очень сложно для меня

Тогда попробуйте тут
*

timssky

  • Захожу иногда
  • 320
  • 0 / 0
Цитировать
основное меню не "превращается" в мобильное и "прописать" одной строчкой тут не получится. Основное меню становится скрытым при уменьшении экрана, на его месте появляется кнопка, которая раскрывает "мобильное" меню, которое по умолчанию так же скрытое. Вот тоже самое вам нужно и с меню каталога сделать. То есть сделать еще одно "выезжающее меню" и кнопку, которая его будет раскрывать, по умолчанию их сделать скрытыми и медиа запросами при уменьшении экрана скрывать само меню и показывать кнопку раскрывающую offcanvas меню

А если не заморачиваться с offcanvas меню. А сделать чтобы просто при сжатии экрана меню становилось как выпадающий список.

КОД МЕНЮ

Код
<?php

// Menu ID
if ($id = $params->get('tag_id')) {
    $attrs['id'] = $id;
}

// determine layout
if (strpos($position, 'navbar') === 0) {

    $layout = $theme->get('header.layout');

    if (preg_match('/^(offcanvas|modal)/', $layout)) {

        $type = 'nav';
        $attrs['class'][] = "uk-nav uk-nav-{$theme->get('navbar.toggle_menu_style')}";
        $attrs['class'][] = $theme->get('navbar.toggle_menu_center') ? 'uk-nav-center' : '';

    } else {

        $type = 'navbar';
        $attrs['class'][] = 'uk-navbar-nav';

    }

    if ($layout == 'stacked-center-split' && $params->get('split')) {

        $length = ceil(count($items) / 2);

        if ($position == 'navbar-split') {
            $items = array_slice($items, 0, $length);
        } else {
            $items = array_slice($items, $length);
        }
    }

} else if ($params->get('menu_style') == 'subnav' || in_array($position, ['toolbar-left', 'toolbar-right'])) {

    $type = 'subnav';
    $attrs['class'][] = 'uk-subnav';

} else {

    $type = 'nav';
    $attrs['class'][] = 'uk-nav';

    if ($position == 'mobile') {

        $attrs['class'][] = "uk-nav-{$theme->get('mobile.menu_style')}";
        $attrs['class'][] = $theme->get('mobile.menu_center') ? 'uk-nav-center' : '';


    } else if (!array_filter($items, function ($item) { return $item->type !== 'header' && (isset($item->children, $item->url) && $item->url != '#'); })) {

        $params->set('accordion', true);
        $attrs['class'][] = 'uk-nav-default uk-nav-parent-icon uk-nav-accordion';
        $attrs['uk-nav'] = true;

    } else {

        $attrs['class'][] = 'uk-nav-default';

    }

}

?>

<ul<?= $this->attrs($attrs) ?>>
<?= $this->render("menu/{$type}", ['items' => $items, 'level' => 1]) ?>
</ul>

Я так понимаю что в PHP нужно прописать что при сжатии будет дейстовать другой CSS стиль. Вопрос куда в этом коде это прописать ?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Не выводится позиция в шаблоне в полной новости

Автор Shademy

Ответов: 6
Просмотров: 125
Последний ответ 08.11.2018, 13:17:16
от Shademy
Разместить блок по всю ширину экрана

Автор RacoN

Ответов: 0
Просмотров: 129
Последний ответ 06.05.2018, 15:02:58
от RacoN
Сохранение комментариев в виджете ВК при изменении адреса

Автор creative3d

Ответов: 1
Просмотров: 153
Последний ответ 21.04.2018, 14:13:56
от creative3d
Пользовательская позиция

Автор aslero

Ответов: 1
Просмотров: 153
Последний ответ 20.03.2018, 10:51:58
от aslero
Позиция модуля, на даёт рекламного коду Адсенс растянуться на весь экран

Автор Victor333

Ответов: 0
Просмотров: 157
Последний ответ 02.02.2018, 21:17:32
от Victor333