Как вывести определенный инфоблок в карточке товара битрикс?

Для вывода определенного инфоблока в карточке товара в Битриксе, вам понадобится изменить шаблон компонента "Каталог товаров" или создать свой шаблон.

Вот несколько шагов, которые помогут вам выполнить задачу:

1. Создайте новый шаблон для компонента "Каталог товаров" или отредактируйте существующий. Шаблон может быть создан в папке "local/templates/ваш_шаблон/components/bitrix/catalog".

2. Откройте файл шаблона (например, template.php) и найдите код, отвечающий за вывод карточки товара. Обычно он находится внутри цикла foreach, который выводит список товаров. Этот код может выглядеть примерно так:

<?foreach ($arResult['ITEMS'] as $arItem):?>
    <div class="catalog-item">
        <a href="<?=$arItem['DETAIL_PAGE_URL']?>"><?=$arItem['NAME']?></a>
        <p><?=$arItem['PREVIEW_TEXT']?></p>
    </div>
<?endforeach;?>

3. Добавьте код для вывода информации из нужного инфоблока. Например, если вам нужно вывести свойство "Цвет" из инфоблока "Характеристики товаров", использование CIBlockElement::GetByID() и CIBlockElement::GetProperties() может быть полезным. Пример кода может выглядеть так:

<?foreach ($arResult['ITEMS'] as $arItem):?>
    <div class="catalog-item">
        <a href="<?=$arItem['DETAIL_PAGE_URL']?>"><?=$arItem['NAME']?></a>
        <p><?=$arItem['PREVIEW_TEXT']?></p>
        
        <?$elementId = $arItem['ID'];
        $element = CIBlockElement::GetByID($elementId)->GetNextElement();
        if ($element):
            $elementProps = $element->GetProperties();
            if ($elementProps['COLOR']['VALUE']):?>
                <p>Цвет: <?=$elementProps['COLOR']['VALUE']?></p>
            <?endif;
        endif;?>
    </div>
<?endforeach;?>

В этом примере мы получаем идентификатор текущего товара $arItem['ID'], затем используем CIBlockElement::GetByID() для получения информации о товаре и его свойствах. Затем мы проверяем существование свойства "Цвет" ($elementProps['COLOR']['VALUE']) и выводим его значение, если оно не пустое.

Обратите внимание, что вам может потребоваться настроить код для вашего конкретного инфоблока и его свойств. Используйте документацию Битрикса для получения дополнительных сведений о получении информации из инфоблока.