Меню

Статус
В этой теме нельзя размещать новые ответы.

NewS

Гуру форума
Регистрация
15 Авг 2008
Сообщения
254
Реакции
87
Как вывести меню определенных разделов уровня 0? Обычно осуществляется вывод всех включенных разделов. А как указать только ненкоторые из них?
Хочу разбить это меню 0 уровня, и часть вставить в одном месте, а другую часть в другом месте шаблона.

Меню выводится функцией:
PHP:
s_browse_level(int $level, $template, $ignore_check = 0, $where_cond = '')
С помощью $where_cond можно дополнить запрос в секции WHERE.

Может какой запрос нужно выполнить, чтобы вывести меню некоторых, определенных разделов?
 
Делим меню верхнюю и нижнюю часть.

Через Системные таблицы создать Разделам логическое поле "up" с описанием "Раздел входит в верхнее меню".
После этого в настройках разделов, в секции Дополнительные поля отметить галочку "Раздел входит в верхнее меню".
PHP:
$browse_sub[up][prefix] = "<ul>";
$browse_sub[up][suffix] = "</ul>";
$browse_sub[up][active] =  "<li>\".(\$data[\$i]['up'] ? \"<a href='%URL'>%NAME</a>\" : NULL).\"</li>";
$browse_sub[up][active_link] =  "<li>\".(\$data[\$i]['up'] ? \"<a href='%URL'>%NAME</a>\" : NULL).\"</li>";
$browse_sub[up][unactive] =  "<li>\".(\$data[\$i]['up'] ? \"<a href='%URL'>%NAME</a>\" : NULL).\"</li>";

$browse_sub[down][prefix] = "<ul>";
$browse_sub[down][suffix] = "</ul>";
$browse_sub[down][active] =  "<li>\".(!\$data[\$i]['up'] ? \"<a href='%URL'>%NAME</a>\" : NULL).\"</li>";
$browse_sub[down][active_link] =  "<li>\".(!\$data[\$i]['up'] ? \"<a href='%URL'>%NAME</a>\" : NULL).\"</li>";
$browse_sub[down][unactive] =  "<li>\".(!\$data[\$i]['up'] ? \"<a href='%URL'>%NAME</a>\" : NULL).\"</li>";


".s_browse_sub(0,$browse_sub['up'])."

".s_browse_sub(0,$browse_sub['down'])."
 
  • Нравится
Реакции: NewS
Интересный способ, :) только правильнее, наверное, использовать s_browse_level ?
А я уже меню раздробил на 3 части и раскидал в 3 раздела. И затем выводил функцией s_browse_sub подразделы.

И еще, как в твоем примере быть с разделителями? У меня в меню они присутствуют. Меню состоит из трех частей, и в конце первых двух меню получается лишний разделитель (divider).
PHP:
$browse_sub[up][divider] = "\".(\$data[\$i]['up'] ? \" | \" : NULL).\"";
Получается:
раздел1 | раздел2 | раздел3 |
раздел4 | раздел5 |
раздел6 | раздел7
Как можно избавиться от последнего разделителя в первых двух меню?
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху