Иногда, выводить элементы инфоблока с помощью компонентов, может оказаться избыточным. Например, если нужно вывести элементы инфоблока для реализации слайдера в шаблоне. Расскажу как вывести с помощью API Битрикс CIBlockElement::GetList
В большинсве случаев, можно воспользоваться компонентом «Список новостей» и просто сверстать шаблон этого компонента, как того требует дизайн сайта. Слайдеры, списки акций или предложений, преимуществ и прочих, небольших блоков- прорисованных в макете сайта.
Но, что бы листинг шаблона был не очень длинным, если таких вставок достаточно много, эффективнее выводить с помощью API
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
<? if (CModule::IncludeModule("iblock")): // ID инфоблока из которого выводим элементы $iblock_id = 11; $my_slider = CIBlockElement::GetList ( // Сортировка элементов Array("ID" => "ASC"), Array("IBLOCK_ID" => $iblock_id), false, false, // Перечисляесм все свойства элементов, которые планируем выводить Array( 'ID', 'NAME', 'PREVIEW_PICTURE', 'PREVIEW_TEXT', 'PROPERTY_LIN_PR' ) ); while($ar_fields = $my_slider->GetNext()) { //Выводим элемент со всеми свойствами + верстка $img_path = CFile::GetPath($ar_fields["PREVIEW_PICTURE"]); echo '<li><a href="'.$ar_fields['PROPERTY_LIN_PR_VALUE'].'">'; echo '<h4>'.$ar_fields['NAME']."</h4>"; echo "<img src='".$img_path."'/>"; echo "<p>".$ar_fields['PREVIEW_TEXT']."'</p>"; echo '</a></li>'; } endif; ?> |