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

Помогит разобраться с привязками!

00 голосов
6
Доброй ночи!

Проблема в следующем:
Есть инфоблок Фотогалерея - в ней созданы разделы и в каждом разделе фотографии.
Есть инфоблок Новости, в котором в свойствах стоит привязка к разделу, называемая photos.

При выводе новостей в вывод Материалов по теме отображаюся все фотографии сразу из всех разделов инфоблока Фотогалереи, хотя в новости выбирался конкретный раздел фотогалереи.
Такая же штука и при выводе элементов - выводятся сразу все.

В настройках Материалов по теме выбираю Инфоблок - Фотогалерея, код свойства - photos.
Может я чего не понимаю и что-то делаю не так?
спросил 07 Сен, 13 от Fujio (120 баллов)

6 Ответы

00 голосов
Код
хотя в новости выбирался конкретный раздел фотогалереи.

А где при создание свойства инфоблока типа "привязка к элементам" есть возможность указать раздел инфоблока?
ответил 07 Сен, 13 от JayPanda (260 баллов)
00 голосов
Это свойство выплывает при добавлении элемента в инфоблоке в первом табе, в привязке есть возможность указать раздел привязываемого инфоблока, но только при выводе добавляются все элементы привязываемого инфоблока, а не только выбранный.
ответил 02 Дек, 13 от Fujio (120 баллов)
00 голосов
При редактирование свойства -> Свойство детально: Информационный блок: А далее идёт выбор типа информационного блока и самого информационного блока. А раздела ИБ здесь вовсе не видать. Поэтому подозреваю, что такая возможность не поддерживается.
ответил 15 Март, 14 от JayPanda (260 баллов)
00 голосов
Рисунок
Выбрать раздел можно, а выводятся все подряд!
ответил 06 Июль, 14 от Fujio (120 баллов)
00 голосов
Нда, извините, не так поняла сначала(
ответил 06 Ноя, 14 от JayPanda (260 баллов)
00 голосов
Сделайте фильтр в шаблоне вывода новостей по свойству привязки! (CIBlockElement::GetList) ;) Думаю, так должно заработать!
Код
<?
$arSelect = Array("какие значения нам нужны");
$arOrder = Array(сортировка);
$arFilter = Array("IBLOCK_ID"=>IntVal(ID-инфоблока-привязанного), "PROPERTY_свойство_по_которому_привязывали"=>$arItem["ID"]);
$arGroupBy = false;
$arNavStartParams = false;
$res = CIBlockElement::GetList($arOrder, $arFilter, false, false, $arSelect);
while($ob = $res->GetNextElement())
{
$arFields = $ob->GetFields();
echo $arFields;
}
?>

Что-нибудь такого типа! А вообще, если поюзать мануал для разработчиков, то можно много всего найти! =) Там это выглядит так:
Код
CIBlockResultCIBlockElement::GetList( array arOrder = Array("SORT"=>"ASC"), 
array arFilter = Array(), 
mixed arGroupBy = false, 
mixed arNavStartParams = false, 
array arSelectFields = Array());
ответил 05 Март, 15 от Serofim (800 баллов)

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

0 голосов
2 ответов
спросил 05 Март, 14 от Soulmir (100 баллов)
0 голосов
2 ответов
0 голосов
4 ответов
0 голосов
6 ответов
спросил 18 Окт, 13 от TeAr (120 баллов)
0 голосов
0 ответов
спросил 05 Окт, 13 от Scabres (220 баллов)