Фотогалерея из одного элемента в bitrix

Опубликовано 02.03.2011

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

Тут и приходится вспомнить о средствах для разработчика и богатом запутанном API CMS. В данном случае предлагается воспользоваться функцией CFile::GetPath, как раз и извлекающей прямые ссылки из скормленных ей идентификаторов.

В качестве примера - компактная фотогалерея, состоящая из одного элемента. В самом элементе (то есть в родительском инфоблоке) имеется множественное свойство типа Файл, куда подгружаются фотки и где очень удачно имеется поле для описания.

Перед выводом имеем следующий код:

<-?
foreach ($arResult[ELEMENTS_LIST][XX][PROPERTIES][MORE_PHOTO][VALUE] as $index=>$photo)
{
$File = CFile::GetPath($arResult[ELEMENTS_LIST][XX][PROPERTIES][MORE_PHOTO][VALUE][$index]);
$Description = ($arResult[ELEMENTS_LIST][XX][PROPERTIES][MORE_PHOTO][DESCRIPTION][$index]);
?->

Вместо XX следует поставить ID элемента, где хранятся фотки, в переменной $File окажется ссылка на фото, а в $Description - ее описание.
Я, конечно, очень крутой программист, перебирающий массив только ради ключей… но думаю, смысл понятен.

Похожие записи

blog comments powered by Disqus