Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

новый инфоблок vs cоздание нового раздела

00 голосов
3
Доброго времени суток.

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

Пример.
У меня есть стандартный тип ИБ "статьи" и мне нужно создать раздел статей с заданной тематикой. а) Я могу создать новый ИБ типа статьи, и б) могу просто создать раздел в существующем инфоблоке типа статьи.

Как с точки зрения разработчика правильней?

И еще вопрос.
Допустим я выбрал вариант а).
Мне необходимо вывести на страницу список разделов некоторого каталога (в моем случае - статей)
Когда я вывожу на странице компонентом catalog.section.list (я правильно выбрал?) корневые разделы каталога. В обьекте $arResult я не получаю собственно имя самого инфоблока (хочу чтоб сверху было написано: "Разделы #ИМЯ_ИБ#"), разделы которого собственно хочу вывести.

Что я принципиально делаю не так?

ЗЫ: если я не там вообще отпостился напишите плиз, где надо пересоздать этот чЮдо-топег

Заранее спасибо за помощь! :)
спросил 29 Май, 13 от shamanka (160 баллов)

3 Ответы

00 голосов
Выбирай тот же инфоблок. Создавать новый имеет смысл только если нужны другие какието специальные свойства, можно конечно сделать один инфоблок с избыточными свойствами, но это не удобно и возможно создаст лишнюю нагрузку на бл. Размещать в разделах удобно тем, что между ними можно перемещать элементы. А между инфоблоками нельзя.
В catalog.section.list элементы выбираются по ИД секции. Ну а зная ИД используй эту функцию, чтобы получить имя:
Код
<?
$res = CIBlockSection::GetByID($_GET["GID"]);
if($ar_res = $res->GetNext())
  echo $ar_res['NAME'];
?>
ответил 29 Май, 13 от OPEX (720 баллов)
00 голосов
О! Живая душа :)

Ну вот есть ИБ статей - ИБ1 и я хочу в другом инфоблоке (ИБ2) в кач свойства выводить список разделов данного (ИБ1). А если я создам раздел в текущем(то есть не ИБ1 а раздел в существуещм ИБ_статьи), то при ораганизации свойства типа "привязка к разделам" у меня в селекте будут имена левых разделов (т.е. всех, содержащихся в ИБ_статьи) ...
Если я создам раздел в текущем ИБ, как мне отсеять лишнее? ФОрму редактирования сделать кастомной?
ответил 02 Июнь, 13 от shamanka (160 баллов)
00 голосов
Единый иблок с разделами позволяет выводить все элементы всех разделов в одном списке с одной сортировкой в админке, иногда это удобно. А так же задавать общие свойства и делать автоматически менюшки.
Отдельный иблок позволяет создавать у элементов разные дополнительные свойства, а так же свою систему разделов для каждого иблока. Самое главное - на отдельные иблоки можно давать права изменения/добавления отдельным группам пользователей. Кроме того, запросы к таким иблокам в ряде случаев быстрее будут работать за счет выборки по одному полю (IBLOCK_ID) вместо двух (IBLOCK_ID, SECTION_ID)
В остальном же можно одинаково организовать работу как разделов, так и отдельных иблоков. Если компоненты обработки и отображения самописанные - то разница довольно прозрачна. Если стандартные, то надо создавать "под них".
ответил 01 Сен, 13 от Eddie (2,060 баллов)

Похожие вопросы

0 голосов
2 ответов
спросил 30 Янв, 14 от wvgykujs (100 баллов)
0 голосов
0 ответов
спросил 22 Ноя, 13 от bot6 (200 баллов)
0 голосов
1 ответ
спросил 09 Июнь, 13 от Almarea (3,760 баллов)
0 голосов
3 ответов