Для получения всех товаров из каталога в Bitrix и передачи их в шаблон карточки товара, вы можете использовать следующий подход:
1. Получите все доступные товары в каталоге с помощью функции CIBlockElement::GetList. Необходимо указать нужные параметры в фильтре, такие как ID инфоблока, активность и доступность товара и т.д. Пример кода:
```php
$arSelect = Array("ID", "NAME", "PROPERTY_PRICE");
$arFilter = Array("IBLOCK_ID" => 1, "ACTIVE" => "Y");
$res = CIBlockElement::GetList(Array(), $arFilter, false, false, $arSelect);
$arResult["PRODUCTS"] = array();
while($ob = $res->GetNextElement()){
$arFields = $ob->GetFields();
$arResult["PRODUCTS"][] = $arFields;
}
```
2. Передайте полученные товары в массив $arResult для доступа к ним в шаблоне карточки товара. Добавьте полученные товары в существующий массив $arResult в нужном формате. Пример кода:
```php
$arResult["PRODUCTS"] = array();
while($ob = $res->GetNextElement()){
$arFields = $ob->GetFields();
$arResult["PRODUCTS"][] = $arFields;
}
```
3. В шаблоне карточки товара вы можете использовать цикл для отображения свойств каждого товара и передачи их на страницу. Например:
```php
<?foreach($arResult["PRODUCTS"] as $arProduct):?>
<div class="product">
<h3><?=$arProduct["NAME"]?></h3>
<p>Price: <?=$arProduct["PROPERTY_PRICE_VALUE"]?></p>
</div>
<?endforeach;?>
```
Это примерное решение, и вы можете настроить его под свои требования и структуру данных.