1. Шаблон не завершён — отсутствует цикл вывода товаров
Код обрывается на открывающем <div class="brand-products bx-catalog-section">.
Нет цикла по $arResult['ITEMS'] и, главное, нет вызова компонента
catalog.item, хотя вы явно пишете, что хотите выводить товары через него.
В стандартном шаблоне catalog.section/.default товары выводятся так:
<?php foreach ($arResult['ITEMS'] as $item): ?>
<?
$APPLICATION->IncludeComponent(
'bitrix:catalog.item',
'',
array(
'RESULT' => array(
'ITEM' => $item,
'AREA_ID' => $areaId,
'SECTION' => $arResult['SECTION'],
'BIG_DATA' => $bigData,
),
'PARAMS' => $generalParams
+ array('SKU_PROPS' => $arResult['SKU_PROPS'][$item['IBLOCK_ID']])
),
$component,
array('HIDE_ICONS' => 'Y')
);
?>
<?php endforeach; ?>
2. Отсутствует закрывающий </div> и вывод пагинации
После цикла с товарами должны быть:
- Блок нижней пагинации (при
$showBottomPager === true) - Закрывающий
</div>для контейнераbrand-products - Вывод
$arResult['NAV_STRING']для постраничной навигации
3. Переменные $elementEdit / $elementDelete не используются
Они получены через CIBlock::GetArrayByID(), но в предоставленном коде нигде не применяются.
Если вы не используете их далее для AddEditAction() / AddDeleteAction() в цикле — это мёртвый код.
4. Отсутствует разметка для AJAX-навигации и LazyLoad
Переменные $showTopPager, $showBottomPager, $showLazyLoad
рассчитаны, но в HTML-выводе они не задействованы. Для корректной AJAX-подгрузки нужны
контейнеры с data-entity атрибутами.
Пример корректной структуры контейнера с LazyLoad:
<div class="brand-products bx-catalog-section"
data-entity="container-<?=$navParams['NavNum']?>">
<!-- цикл с товарами -->
</div>
<?php if ($showLazyLoad): ?>
<div class="bx-catalog-section--lazyload"
data-entity="lazyload-<?=$navParams['NavNum']?>">
<?php include __DIR__.'/lazyload.php'; ?>
</div>
<?php endif; ?>
5. Нет обработки $templateData для component_epilog.php
Массив $templateData сформирован, но не передаётся в
$this->SetViewTarget() или не используется в component_epilog.php.
Согласно документации, $templateData должен быть передан через
$this->SetViewTarget('catalog-section') для корректной работы кеширования.
Итоговая рекомендация
Если вы хотите вывести товары бренда на странице бренда через catalog.item,
вам нужно в этом шаблоне (или в кастомном) добавить цикл по $arResult['ITEMS']
с вызовом $APPLICATION->IncludeComponent('bitrix:catalog.item', ...) для каждого
элемента, как показано в пункте 1. Без этого карточки товаров отрисованы не будут.