Вывод разделов инфоблока по первой букве. Алфавитный указатель в Битрикс
382
Для вывода разделов инфоблока сгруппированных по первой букве наименования раздела и создания алфавитного указателя на Битрикс можно воспользоваться следующим кодом и разместить его в шаблоне компонента catalog.section.list (Разделы инфоблока): <div class="CatalogList">
<div class="Items">
<?
foreach ($arResult["SECTIONS"] as $arSectionArray) {
$sectFName = $arSectionArray['NAME'];
$sectFLetter = mb_substr($sectFName, 0, 1, 'UTF-8');
$arrayFirsletter .= '\'' . $sectFLetter . '\',';
}
eval('$FirstLetter=array(' . $arrayFirsletter . ');');
extract($FirstLetter);
$uniuLetter = array_unique($FirstLetter); //в массиве $uniuqLetter получаем уникальные, первые буквы, всех разделов инфоблока
foreach ($uniuLetter as $onlyOnceLetter) { //Проходим циклом по нашему массиву с уникальными буквами и выводим их пользователю с помощью $onlyOnceLetter
?>
<div class="Item">
<?echo '<div class="Letter">' . $onlyOnceLetter . '</div>';?>
<div class="RegionList">
<ul>
<?foreach ($arResult["SECTIONS"] as $arSection) {
if (mb_substr($arSection['NAME'], 0, 1) == $onlyOnceLetter) { ?>
<li class="Parent Name<?echo $arSection['ID']; ?>">
<a href="<?= $arSection["SECTION_PAGE_URL"] ?>">
<?echo $arSection['NAME']; ?>
</a>
</li>
<?}?>
<?}?>
</ul>
</div>
</div>
<?}?>
</div>
</div> |
Последние записи
|