Регистрация
Вход через соцсети
Восстановление пароля

Можно ли указать диапазон разделов?

Новый топик
04.06.2013, 14:09
Ответить | Цитировать
ipm
Ильин Павел

Зарегистрирован:
2012-10-12
Сообщений: 367

Можно ли указать диапазон разделов?

Т.е. $sub==323 и все подразделы этого раздела, либо диапазон разделов определённый.

Есть способ?

Знание может быть лишь у того, у кого есть вопросы. Ханс Георг Гадамер
04.06.2013, 17:15
Ответить | Цитировать
Nexwich
Панасин Александр
Nexwich

Зарегистрирован:
2011-04-05
Сообщений: 943

Не совсем понятно что вы описываете.
Как вариант использовать s_browse_sub с выборкой по условию.
s_browse_sub(0,$browse_sub[0],0,$where_cond = "fav='1'")
Создайте дополнительно поле для раздела в системных таблицах например "fav"(логическая переменная).
Или же создайте раздел и в нем создавайте подразделы с внешними ссылками.

Модуль "Почтовые уведомления" – настройка уведомлений на вашем сайте без программирования. Цена отзыв. Мне очень важно ваше мнение.
04.06.2013, 21:20
Ответить | Цитировать
Руслан Густокашин
Студия Вэлпис
Руслан Густокашин

Зарегистрирован:
2012-02-06
Сообщений: 869

Вот так я составляю условие выборки объектов в системных настройках компонента, чтобы отобразить в текущем разделе все объекты и этого, и вложенных разделов:
Код:

$sublist_tpl['prefix'] = "";
$sublist_tpl['unactive'] = "{\$data[\$i][Subdivision_ID]},\".s_browse_sub(\$data[\$i][Subdivision_ID],\$browse_template).\"";
$sublist_tpl['active'] = $sublist_tpl['unactive'];
$sublist_tpl['suffix'] = "";
$sublist=s_browse_sub($sub,$sublist_tpl).$sub;
$query_where .=" and a.Subdivision_ID in ($sublist)";

Обратите внимание - в двух местах указана переменная $sub. Ей неткат по умолчанию присвоит номер текущего раздела. Если надо составить список разделов именно для раздела 323 - то укажите этот номер.
И еще обратите внимание на то, что в данном примере идет добавление условия к переменной $query_where, то есть где-то выше эта переменная должна быть проинициализирована, например командой $query_where="1".
Тестировал на 4.72 версии и на более старых.

05.06.2013, 11:17
Ответить | Цитировать
Игорь
Stark
Игорь

Зарегистрирован:
2011-11-20
Сообщений: 396

Не совсем понятно, что вы хотите получить.
Если это какой-то каталог с товарами, то просто добавляете все товары в раздел. У товара дополнительное поле - подразделы, где указываете их номер(а).
Или же все товары добавляются в свои подразделы, в разделе они выводятся все с помощью системных настроек компонента.

Какой вариант Вам нужен?
05.06.2013, 12:13
Ответить | Цитировать
ipm
Ильин Павел

Зарегистрирован:
2012-10-12
Сообщений: 367

Хорошо, поставлю вопрос по другому.
Есть ли способ не выводить определённые разделы в навигации? Я знаю, можно просто раздел выключить, но есть ли альтернатива. Если клиент попросит, например, сделать так, что все разделы в админке в карте сайта были активными, то как не выводить нужные разделы в навигации макета?

Знание может быть лишь у того, у кого есть вопросы. Ханс Георг Гадамер
05.06.2013, 13:36
Ответить | Цитировать
Игорь
Stark
Игорь

Зарегистрирован:
2011-11-20
Сообщений: 396

Создается дополнительное поле "Показывать в меню" в Системные таблицы -> Разделы, тип поля Логическая переменная (обязательно для заполнения). В Настройках -> Дополнительные поля появится чекбокс. Чекнули - показывать, нет - наоборот)

В макете:
Код:
".s_browse_sub(0, $browse_sub[1], 1, $where_cond="ShowMenu='1'")."


зы. выше был такой вариант.
198 196 2013-06-05 13:36:04 13091
Описание проекта