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

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

23.05.2013, 12:57
Гость
Гость

Здраствуйте. Вопрос в следующем.

Есть много разделов

bmw
alfa rameo
mercedes

и тд

В каждом разделе есть инфоблок, допустим фотография.

Нужно вывести на главной все объекты которые принадлежат этому инфоблоку из всех этих разделов. При создании нового раздела и добавлении объекта в этот инфоблок объект должен автоматически выводиться на главной.. Есть какое-нибудь решение такой ситуации? Спасибо!
23.05.2013, 14:32
Игорь
Игорь Мишарин
Игорь

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

Создаете шаблона компонента, называете его, например, Для вывода на главной.
В системные настройки этого шаблона:
Код:
$ignore_sub=1;
$ignore_cc=1;

В макете Главной страницы:
Код:
< ?=s_list_class(XX, YY, "nc_ctpl=ZZZ")?>

XX - номер раздела с компонентом
YY - номер компонента в разделе
ZZZ - номер шаблона компонента

Stark
23.05.2013, 18:38
Игорь

Зарегистрирован:
2013-04-29
Сообщений: 48

Большое спасибо всё работает!)
24.05.2013, 02:31
tengy
TengyStudio

Зарегистрирован:
2009-04-15
Сообщений: 37

Подскажите, пожалуйста, а как каждый новый из других разделов выводить?
У меня макет главной выглядит очень коряво, больше десятка блоков вида
Код:
<?=nc_objects_list(0, $template_settings['3_block_left_cc'], "&nc_ctpl=2011&recNum=".$template_settings['3_block_left_num']."&nc_num_cols=".$template_settings['3_block_left_cols']) ?>
<?=nc_objects_list(0, $template_settings['4_block_left_cc'], "&nc_ctpl=2011&recNum=".$template_settings['4_block_left_num']."&nc_num_cols=".$template_settings['4_block_left_cols']) ?>
<?=nc_objects_list(0, $template_settings['5_block_left_cc'], "&nc_ctpl=2011&recNum=".$template_settings['5_block_left_num']."&nc_num_cols=".$template_settings['5_block_left_cols']) ?>

Где
2011 - шаблон компонента,
Пользовательские настройки:
3_block_left_cc - Выводить компонент из раздела (Связь с другой сущностью),
3_block_left_num - Количество объектов (Целое число)
и т.д.
К тому же при такой конструкции, если пользователь не захотел выбрать компонент для одного из блоков, на сайте отображается "дыра с крестиком" -
Subdivision with id does not exist.
Как этого избежать и существует ли более красивый способ выводить объекты из разных компонентов?

Всегда существует простое легкое для понимания неправильное решение (с)
24.05.2013, 10:51
Игорь
Игорь Мишарин
Игорь

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

Цитата:
Подскажите, пожалуйста, а как каждый новый из других разделов выводить?

По умолчанию объекты сортируются по дате, новые вверху.
Читайте мой пост выше.
Плюс добавить еще один параметр - количество выводимых объектов:
Код:
< ?=s_list_class(XX, YY, "nc_ctpl=ZZZ&recNum=2")?>

И в шаблоне для вывода на главной убрать из суффикса пагинацию.
В этом же шаблоне можно настроить вывод этих объектов:
вертикально, горизонтально, добавить какой-то текст.

Stark
198 196 2013-05-24 10:51:25 13072
Описание проекта