Регистрация
Регистрируясь, вы подтверждаете свое согласие с соглашением об использовании персональных данных.
Восстановление пароля

Вывод в разделе всех объектов из его подразделов

23.08.2010, 21:49
Гость
Гость

Поскажите пожалуйста как реализовать такую задачу.

Есть статейный тематический раздел с подразделами (по подтематикам). Статьи (объекты) добавляются в какой-либо выбранный подраздел. В родительский же общий раздел статьи не добавляются.
Нужно списком с постраничной навигацией вывести в родительском разделе все статьи (объекты-только анонсы) из подразделов.
Все подраздлы привязаны к одному и тому же компоненту.
24.08.2010, 08:14
malich
Андрей Малков

Зарегистрирован:
2005-08-09
Сообщений: 522

В системных настройках компонента нужно написать примерно следующие:
Код:
// в главном разделе категории выведем все товары из под категорий
// если мы находимся на 1-ом уровне вложенности навигации (сайт - раздел сайта 1-го уровня)
if ($sub_level_count == 1){
// посмотрим есть ли у раздела подразделы
if(($db->get_var("SELECT COUNT(*) as n FROM Subdivision WHERE Parent_Sub_ID=$sub AND Checked=1") >> 0)){
// получим id подразделов раздела в виде 34,35,36
$viborka = listQuery("SELECT Subdivision_ID FROM Subdivision WHERE Parent_Sub_ID=$sub AND Checked=1","\".(\$i == 0?\"$sub\": NULL ).\",\$data[Subdivision_ID]");
// игнорируем привязку записей в компоненте к разделу
$ignore_sub=1;
// и компоненту в разделе
$ignore_cc=1;
// выбираем записи только из нужных нам разделов
$query_where = "a.Subdivision_ID IN ($viborka)";
}
}
24.08.2010, 10:31
Гость
Гость

Спасибо, Андрей, буду пробовать.

И еще, как полученные записи разбить на страницы (по 10 на страницу)? В таком же виде как это реализовано средствами NetCat, например:
< пред. 1 2 3 след. >
24.08.2010, 11:50
Гость
Гость

Про разбивку на страницы отменяется. Все делится, компонент-то ведь у родителя тот же улыбка

Андрей, вставил Ваш код как есть. Все получилось отлично! Еще раз большое спасибо!
24.08.2010, 14:08
malich
Андрей Малков

Зарегистрирован:
2005-08-09
Сообщений: 522

Пожалуйста :-)
10.08.2012, 12:45
Kirs
ООО "КИРАНА"

Зарегистрирован:
2007-02-01
Сообщений: 96

немного модифицированный вариант подошел и для поиска по подразделам, только условие не $sub_level_count == 1, а isset($_GET['query']) и, конечно, к $query_where добавлено само условие поиска - в моем случае достаточно простого LIKE по нужным полям
198 196 2012-08-10 12:45:18 10667
Описание проекта