Нужно на этой странице (деталька) получить свойства элемента другого иб номер 135 у которого CODE равен св-ву KODE, в данном примере tinkoff . Каждое св-во нужно поместить в переменные, которые в последующем будем заменять в тексте (чтоб текст писался админом и с использованиев тегов типа #NAME#, #CITY# и т.д., а реальные данные мы будем подставлять из полученных свойств)
Сейчас в тексте пока 2 переменных: #NAME# и #CITY#
#NAME# нужно заменить на наименование элемента с кодом tinkoff (в данном примере) инфоблока 135, а #CITY# на его св-во CITIES
Т.е данные к вопросу о конкретном банке мы тянем из св-в банка, который есть элементов другого иб — если спросили про Тинькофбанк, то нужно достать св-ва именно этого банка.
Александр Гусев написал: Может через свойство "привязка к элементам ИБ" делать? Чтоб по CODE не искать – это ресурсозатратно выйдет в итоге, когда на сайте трафик появится
Да, есть смысл. Спасибо. Использую код: <? if (is_array($arResult['PROPERTIES']["KOMLP"]["VALUE"])) { ?> <? foreach ($arResult['PROPERTIES']["KOMLP"]["VALUE"] as $komplID) { $komplObject = CIBlockElement::GetByID($komplID); $komplObject->SetUrlTemplates("/catalog/#SECTION_CODE_PATH#/#ELEMENT_CODE#/"); $komplObject = $komplObject->GetNext();
echo $komplObject["CODE"]; echo $komplObject["DISPLAY_PROPERTIES"]["ZAYAV"]["VALUE"]; //!!!!!!НЕ РАБОТАЕТ
Во-первых, не выбирайте отдельными CIBlockElement::GetByID - падение производительности. Используйте GetList. Во-вторых, ваш код выбирает только поля, а не свойства. Поэтому и не выводит. Для выбора значений свойств в вашей задаче можно использовать CIBlockElement::GetPropertyValuesArray. Только не забудьте перечислить требуемые свойства.
Не надо сверлить зубы через задний проход дрелью от Сваровски