Сделав вынужденный перерыв в деятельности, связанной с разработкой под битрикс, автор настоящей заметки осознал на собственном опыте, что знания имеют свойство «вымываться». В том числе, казалось бы, сравнительно простые. Исходя из данного тезиса и родилась идея настоящей статьи. Как следствие, данная статья носит справочный характер и должна, по задумке автора, охватить максимально возможное число вариантов вывода свойств в шаблоне интернет-магазина на битриксе.
Логически, данную статью можно разделить на 2 части:
- Вывод свойств в catalog.section.list
- Вывод свойств в catalog.detail
Несмотря на то, что в примере рассматривается вывод свойств в компонентах каталога, данные примеры также справедливы и для других компонентов битрикса. Например, компонента новостей.

Обратите внимание, что перед выводом свойств нужно добавить свойство в настройках компонента каталога (в публичной части):

Вывод свойств в catalog.section.list
Вывод значения свойства:
<? echo $arItem['PROPERTIES']['TestProp']['VALUE'];?>
Вывод значения свойства с названием:
<? echo $arItem['PROPERTIES']['UF_KOD_BX24_ZAKAZ']['NAME'];?> <? echo $arItem['PROPERTIES']['UF_KOD_BX24_ZAKAZ']['VALUE'];?>
Вывод значения свойства типа html/text:
<? echo $arItem['PROPERTIES']['TestProp']['VALUE']['TEXT'];?>
Вывод свойства типа файл (как ссылка на скачивание):
<?
$res = CIBlockElement::GetProperty($arItem['IBLOCK_ID'], $arItem['ID'], "sort", "asc", array("CODE" => "TestProp"));
if ($ob = $res->GetNext())
{
$testValue = $ob['VALUE'];
$file = CFile::GetFileArray($testValue);
$testValue = $file['SRC'];
}
echo '<a href="'.$testValue.'">TestProp</a>';
?>
Вывод свойства типа файл (как изображение):
<?
$res = CIBlockElement::GetProperty($arItem['IBLOCK_ID'], $arItem['ID'], "sort", "asc", array("CODE" => "TestProp"));
if ($ob = $res->GetNext())
{
$testValue = $ob['VALUE'];
$file = CFile::GetFileArray($testValue);
$testValue = $file['SRC'];
}
echo '<img src="'.$testValue.'">';
?>
Вывод множественного свойства:
<?foreach($arItem["PROPERTIES"]["TestProp"]["VALUE"] as $TestProp):?> <?echo $TestProp;?><br> <?endforeach;?>
Вывод пользовательского свойства:
<?
$select = [
"UF_BANNER_CATEG"
];
$sort = [
"SORT" => "ASC"
];
$filter = [
'IBLOCK_ID' => 27,
'ID' => $arResult['SECTION']['ID'],
];
$rsResult = CIBlockSection::GetList(
$sort,
$filter,
false,
$select
);
while($bResult = $rsResult->GetNext())
{
$testValue = $bResult['UF_BANNER_CATEG'];
$file = CFile::GetFileArray($testValue);
echo '<img src="'.$file['SRC'].'">';;
}
?>
Вывод свойства типа «привязка к элементам»:
<?foreach($arItem["PROPERTIES"]["TestProp"]["VALUE"] as $TestProp):?> <?$res = CIBlockElement::GetByID($TestProp);?> <?if($ar_res = $res->GetNext())?> <li><?=$ar_res["NAME"];?></li> <?endforeach;?>
Вывод свойств в catalog.detail
Вывод значения свойства:
<? echo $arResult['PROPERTIES']['UF_KOD_BX24_ZAKAZ']['VALUE'];?>
Вывод значения свойства с названием:
<? echo $arResult['PROPERTIES']['UF_KOD_BX24_ZAKAZ']['NAME'];?> <? echo $arResult['PROPERTIES']['UF_KOD_BX24_ZAKAZ']['VALUE'];?>
Вывод значения свойства типа html/text:
<? echo $arResult['PROPERTIES']['TestProp']['VALUE']['TEXT'];?>
Вывод свойства типа файл (как ссылка на скачивание):
<?
$res = CIBlockElement::GetProperty($arResult['IBLOCK_ID'], $arResult['ID'], "sort", "asc", array("CODE" => "TestProp"));
if ($ob = $res->GetNext())
{
$testValue = $ob['VALUE'];
$file = CFile::GetFileArray($testValue);
$testValue = $file['SRC'];
}
echo '<a href="'.$testValue.'">TestProp</a>';
?>
Вывод свойства типа файл (как изображение):
<?
$res = CIBlockElement::GetProperty($arResult['IBLOCK_ID'], $arResult['ID'], "sort", "asc", array("CODE" => "TestProp"));
if ($ob = $res->GetNext())
{
$testValue = $ob['VALUE'];
$file = CFile::GetFileArray($testValue);
$testValue = $file['SRC'];
}
echo '<img src="'.$testValue.'">';
?>
Вывод множественного свойства:
<?foreach($arResult["PROPERTIES"]["TestProp"]["VALUE"] as $TestProp):?> <?echo $TestProp;?><br> <?endforeach;?>
Вывод свойства типа «привязка к элементам»:
<?foreach($arResult["PROPERTIES"]["TestProp"]["VALUE"] as $TestProp):?> <?$res = CIBlockElement::GetByID($TestProp);?> <?if($ar_res = $res->GetNext())?> <li><?=$ar_res["NAME"];?></li> <?endforeach;?>
Как можно заметить, процесс вывода переменных на детальной странице и на странице списка отличается только названием переменной: $arResult и $arItem соответственно. Кажется, что данная заметка охватывает большую часть наиболее частотных примеров выводов тех, или иных свойств в компонентах битрикса (простые, файлы, множественные, пользовательские, привязка к эл-там). Более редкие примеры вывода описаны в справке битрикса.