Для работы с каталогом, необходимо использовать стандартный компонент bitrix:catalog
Внимание! Настоятельно рекомендуем скопировать шаблон компонента в шаблон сайта для внесения последующих правок.
Добавление кнопок в список элементов (bitrix:catalog.section)
После того как вы скопировали шаблон комплексного компонента bitrix:catalog в шаблон сайта, необходимо найти следующий файл:
bitrix/templates/ВАШ_ШАБЛОН/components/bitrix/catalog/bitrix/.default/bitrix/catalog.section/.default/template.php
Далее в этом файле ищем часть где выводятся элементы каталога.
Для справки: каждый компонент по завершению своей работы формирует массив результатов. Обычно массив результатов обозначается как $arResult. Компонент bitrix:catalog по умолчанию имеет вложенный массив элементов $arResult[‘ITEMS’]. В нем хранятся данные об элементах (товарах), которые в последующем выводятся в шаблон компонента.
Вывод элементов в шаблоне осуществляется примерно следующим образом:
foreach ($arResult[‘ITEMS’] as $arItem) //цикл для перебора всех элементов в массиве
{
if ($arItem[‘CAN_BUY’]) //если элемент разрешен к покупке
{
//Выводим кнопки “купить” и “в корзину”
}
}
Теперь вставляем код вызова кнопок "купить" и "в корзину" внутри этого цикла, в необходимом месте верстки
foreach ($arResult[‘ITEMS’] as $arItem) //цикл для перебора всех элементов в массиве
{
if ($arItem[‘CAN_BUY’]) //если элемент разрешен к покупке
{
//Выводим кнопки “купить” и “в корзину”
<noindex>
<a href="<?echo $arElement["BUY_URL"]?>" rel="nofollow"> //Кнопка "купить"
<?echo GetMessage("CATALOG_BUY")?>
</a>
<a href="<?echo $arElement["ADD_URL"]?>" rel="nofollow"> //Кнопка "добавить в корзину"
<?echo GetMessage("CATALOG_ADD")?>
</a>
</noindex>
}
}
Если ничего не выводится, то скорей всего в языковых файлах не определены следующие константы:
$MESS["CATALOG_BUY"] = "Купить";
$MESS["CATALOG_ADD"] = "В корзину";