|
|
04.05.2017, 14:54
|
|
Виктор
Зарегистрирован: 2017-05-04
Сообщений: 10
|
День добрый, уважаемые кодеры!
С netcat'ом столкнулся вчера, потихоньку курю мануалы и дело продвигается, но, столкнулся с некой задачей, а описания в тырнэте так и не нашел...
В общем, есть раздел и компонент, к примеру "Услуги", в разделе список услуг (название, описание), в шаблоне компонента есть поле "Отображение объекта" (на отдельной странице). Как бы всё выводится, всё хорошо, НО, как в этом же поле вывести полный список услуг? То есть мне надо организовать сайдбар и вывести весь список услуг в виде меню ну или просто ссылок, подскажите пожалуйста, какая команда за это отвечает, буду признателен за наглядный пример!
Сейчас так: prntscr.com/f3zxs3
А нужно чтоб было так: prntscr.com/f3zy32
Полагаю что тут без foreach не обойтись, но пока совсем не понимаю как это сделать... ибо осваиваю сию систему только второй день...
|
|
|
04.05.2017, 17:35
|
|
Игорь
Игорь Мишарин
Зарегистрирован: 2011-11-20
Сообщений: 482
|
Можно и foreach, но есть nc_browse_sub(XX, $template)
XX - номер раздела с услугами
$template - шаблон вывода
Stark
|
|
|
04.05.2017, 22:11
|
|
Виктор
Зарегистрирован: 2017-05-04
Сообщений: 10
|
А поподробнее можно? Ну касаемо шаблона вывода $template, где его надо описывать?
|
|
|
05.05.2017, 21:18
|
|
Игорь
Игорь Мишарин
Зарегистрирован: 2011-11-20
Сообщений: 482
|
https://netcat.ru/developers/docs/api/nc_browse_sub.html
p.s. $template - это примерно, можно любое название прописать
Stark
|
|
|
06.05.2017, 00:00
|
|
Виктор
Зарегистрирован: 2017-05-04
Сообщений: 10
|
Спасибо конечно, я читал эту страничку , но так я и не пойму... у меня есть подраздел 144, в нем только лишь услуги (список, не разделы), пытался всяко выводить, а ничего не выводится, даже print_r(...) ничего не выдает... А то что $template - это имя своего шаблона я понял, просто не понятно в каком месте его расписывать, в шаблоне компонента где системные переменные или в макете дизайна? В общем фигня получается... а конкретнее ничего не получается...(((
|
|
|
06.05.2017, 01:14
|
|
Камыхин Александр
ПАЛНАРИС
Зарегистрирован: 2013-05-08
Сообщений: 13
|
Если хотите вывести объекты из компонента услуги, то можете воспользоваться функцией nc_objects_list
|
|
|
06.05.2017, 10:23
|
|
Игорь
Игорь Мишарин
Зарегистрирован: 2011-11-20
Сообщений: 482
|
Цитата:у меня есть подраздел 144, в нем только лишь услуги (список, не разделы),
Ага, т.е. в 144 разделе нет подразделов, а услуги добавлены как объекты?
Значит, да, воспользоваться вышеуказанной функцией nc_objects_list при этом применить другой (дополнительный) шаблон вывода объектов, т.е. чтобы выводились только ссылки на услуги.
Например:
Код:<?= nc_objects_list(XXX, YYY, "nc_ctpl=ZZZZ") ;?>
XXX - ID раздела услуг
YYY - ID инфоблока в разделе услуг
ZZZZ - ID дополнительного шаблона компонента
Stark
|
|
|
06.05.2017, 11:01
|
|
Виктор
Зарегистрирован: 2017-05-04
Сообщений: 10
|
Спасибо, теперь стало гораздо понятнее! Объекты вывелись, всё хорошо.
Остался последний вопрос касаемо этого списка... Выводится он в виде <ul><li>....</li></ul>
Как теперь добавить класс active к активной странице? Это нужно делать так же как с меню, префиксы, суффиксы и т.д.?
Сейчас у меня в шаблоне компонента <ul> <?=nc_object_list...?> </ul>, а в соседнем <li>$f_name</li>
Или я что-то не так сделал?
|
|
|
06.05.2017, 11:43
|
|
Виктор
Зарегистрирован: 2017-05-04
Сообщений: 10
|
В общем сделал так... В соседнем шаблоне, "Префикс списка объектов:" добавил: $this_page = $_SERVER['REQUEST_URI'];
А в "Объект в списке:" сделал условие, if ($fullLink == $this_page) ... то <li> класс становится active или же нет... Незнаю насколько это правильно в данной CMS (может есть какие команды попроще), но тем не менее работает.
|
|
|
06.05.2017, 11:47
|
|
Камыхин Александр
ПАЛНАРИС
Зарегистрирован: 2013-05-08
Сообщений: 13
|
да, префиксы, суфиксы и т.д. это для работы с функциями вывода меню. Ваш вариант вполне рабочий, почему бы и нет.
|
|
|
06.05.2017, 11:54
|
|
Виктор
Зарегистрирован: 2017-05-04
Сообщений: 10
|
Подскажите пожалуйста такой момент... Есть у меня раздел услуги при переходе в которой попадаем на страницу с услугами... А как сделать так, чтоб при переходе попадали сразу же в первую услугу списка а не в сам раздел? (Для посетителей имеется ввиду)
Полагаю редирект нужно поставить? Или штатными средствами можно сделать?
|