Как сделать вертикальное меню для отдельной страницы? Есть решение

Добрый день!

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

Спасибо!

4 ответа

  • 2
    Михаил Ушенин Webasyst 27 марта 2015 07:53 # Решение

    Добавьте в нужное месте шаблона дизайна такой код:

    {wa_print_tree tree=$wa->site->pages($page.parent_id|default:$page.id) elem='<a href=":url">:name</a>' selected=$page.id}

    Если у страницы основного уровня есть подстраницы, то они будут показаны в виде дополнительного меню навигации там, куда вы добавите этот код.

  • 1
    Михаил Ушенин Webasyst 27 марта 2015 10:46 # Решение

    Чтобы было только на сайте, но не в блоге:

    {if $wa->app() == 'site'}
    {wa_print_tree tree=$wa->site->pages($page.parent_id|default:$page.id) elem='<a href=":url">:name</a>' selected=$page.id class="sidebar_menu"}
    {/if}

    Чтобы изменить внешний вид, добавьте себе нужные стили в CSS-файл темы дизайна примерно с такими селекторами (потребуются базовые знания CSS):

    .sidebar_menu { }
    .sidebar_menu li { }
    .sidebar_menu li.selected { }
    .sidebar_menu li a { }
    .sidebar_menu li.selected a { }

  • 1
    NiyazOFF 27 марта 2015 08:21 #

    Спасибо появилось. Еще пару вопросов:

    1) Можно ли как то изменить вид этого меню? Некрасиво вышло

    2) В приложении Блог (Новости) вообще все страницы высветились, которые есть.

    Спасибо.

  • 1
    Михаил Ушенин Webasyst 27 марта 2015 10:47 #

    И на странице "Сектор археологии" меню может не отображаться, т. к. код был предложен с учётом плоского меню страниц.

Добавить ответ

Чтобы добавить комментарий, зарегистрируйтесь или войдите