Перейти к содержимому


- - - - -

Два меню


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 7

#1 babaj

babaj

    Новичок

  • Пользователи
  • Pip
  • 6 сообщений

Отправлено 06.11.2009, 17:39

У меня будет сайт на 50 страниц. Нужно реализовать 2 меню (одно в левой колонке, другое в правой) по 25 пунктов.
Как?

#2 support

support

    Активный участник

  • Главные администраторы
  • PipPipPip
  • 1 140 сообщений

Отправлено 06.11.2009, 18:51

Просмотр сообщенияbabaj (06.11.2009, 17:39) писал:

У меня будет сайт на 50 страниц. Нужно реализовать 2 меню (одно в левой колонке, другое в правой) по 25 пунктов.
Как?
У 25 страниц прописать свойство @@menuid=left и добавить второй виджет для вывода пунктов только с типом меню left.

#3 babaj

babaj

    Новичок

  • Пользователи
  • Pip
  • 6 сообщений

Отправлено 06.11.2009, 19:48

Просмотр сообщенияsupport (06.11.2009, 18:51) писал:

У 25 страниц прописать свойство @@menuid=left и добавить второй виджет для вывода пунктов только с типом меню left.
Как создать виджет? Что прописать в шаблоне? Более подробно можно или ссылки? Спасибо!

#4 babaj

babaj

    Новичок

  • Пользователи
  • Pip
  • 6 сообщений

Отправлено 06.11.2009, 22:21

Разобрался сам!
Может кому надо:
Вот мой functions.php:

Цитата

<?php
$sidebar = new zsidebar();

$sidebar->addWidget(new zwidget_pagemenu('pages', array(
    'title' => 'Статьи', // Заголовок блока
    'type' => 'full', // Тип вывода меню: minimal или full
    'depth' => 0, // максимальная глубина отображаемой вложенности, 0 - неограничена
    'menuid' => 'main', // тип меню, false - все пункты, main - главное меню
)));


$sidebar->addWidget(new zwidget_tagcloud('tag-cloud', array(
    'title' => 'Метки', // Заголовок блока
    'smallest' => 8, // Минимальный размер шрифта для вывода облака тэгов
    'largest' => 22, // Максимальный размер шрифта для вывода облака тэгов
    'unit' => 'pt', // Единица измерения для параметров smallest и largest
    'number' => 25, // Количество выводимых тэгов
    'format' => 'flat', // формат вывода тэгов: flat, list
    'orderby' => 'name', // свойство, по которому сортировать тэги: name, count
    'order' => 'ASC', // порядок сортировки: ASC, DESC, RAND
)));

/**
* Регистрируем сайдбар в менеджере. Позже его можно будет вывести, используя
* метод zsidebarmanager::displaySidebar(1)
*/
zsidebarmanager::register($sidebar);


$sidebar2 = new zsidebar();

$sidebar2->addWidget(new zwidget_pagemenu('pages', array(
    'title' => 'Статьи', // Заголовок блока
    'type' => 'full', // Тип вывода меню: minimal или full
    'depth' => 0, // максимальная глубина отображаемой вложенности, 0 - неограничена
    'menuid' => 'right', // тип меню, false - все пункты, main - главное меню
)));


/**
* Регистрируем сайдбар в менеджере. Позже его можно будет вывести, используя
* метод zsidebarmanager::displaySidebar(2)
*/
zsidebarmanager::register($sidebar2);
Вот мой template.php:

Цитата

<div class="all">
<div  class="sidebarl">
<ul>
<li><?php zsidebarmanager::displaySidebar(1); ?></li>
</ul>
</div><!-- SIDEBAR1 -->
<div class="header">
     <div class="logo">

        </div> <!-- logo -->
</div> <!-- HEADER -->
    <div style="clear"></div>
   <div class="content">

<?php z_html(); ?>

</div> <!-- CONTENT -->
<div class="sidebar">
<ul>
<li><?php zsidebarmanager::displaySidebar(2); ?></li>
</ul>
</div> <!-- SIDEBAR2 -->
<div style="clear:both"></div>
</div> <!-- ALL -->
Ну и в свойствах страницы:

Цитата

@@menuid=right


#5 Bernardito

Bernardito

    Новичок

  • Пользователи Zebrum CMS
  • Pip
  • 4 сообщений

Отправлено 25.01.2010, 22:16

А есть ли возможность сделать больше 2 меню? 2 - получается, а 3 по аналогичной схеме - уже нет. Вместо 3-го снова главное выходит.

#6 support

support

    Активный участник

  • Главные администраторы
  • PipPipPip
  • 1 140 сообщений

Отправлено 26.01.2010, 05:56

Просмотр сообщенияBernardito (25.01.2010, 22:16) писал:

А есть ли возможность сделать больше 2 меню? 2 - получается, а 3 по аналогичной схеме - уже нет. Вместо 3-го снова главное выходит.
Можно, только первый аргумент при создании виджета должен быть уникальным (в примере чуть выше "pages" уникален только в пределах одного сайдбара, хотя желательно делать его уникальным в пределах всех сайдбаров).

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

#7 Bernardito

Bernardito

    Новичок

  • Пользователи Zebrum CMS
  • Pip
  • 4 сообщений

Отправлено 26.01.2010, 08:15

Да, все работает. Там мой косяк был по невнимательности... Спасибо

#8 pavelmobile

pavelmobile

    Новичок

  • Пользователи Zebrum CMS
  • Pip
  • 9 сообщений

Отправлено 01.05.2011, 07:20

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




Количество пользователей, читающих эту тему: 3

0 пользователей, 3 гостей, 0 скрытых пользователей