Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

bitrix:store.catalog.index Как в шаблон добавить превью картинок категорий?

00 голосов
1
Подскажите как сделать чтобы при просмотре каталога (http://имя_домена/catalog/) выводились превьюшки категорий. Информационных блоков, то есть секций - один. Превьющка видна только для секции. Попробовал вывести содержимое массива $arSection в шаблоне компонента.
Код
Array
(
    [ID] => 3
    [LIST_PAGE_URL] => /catalog/furniture/
    [PICTURE] => Array
        (
            [ID] => 1
            [TIMESTAMP_X] => 26.09.2011 10:09:48
            [MODULE_ID] => iblock
            [HEIGHT] => 97
            [WIDTH] => 115
            [FILE_SIZE] => 7024
            [CONTENT_TYPE] => image/gif
            [SUBDIR] => iblock/ca9
            [FILE_NAME] => ca9afa0d964f5cc461e2f96652de7e60.gif
            [ORIGINAL_NAME] => 30181731f49a56f21cb79cd907b48ba9.gif
            [DESCRIPTION] => 
            [SRC] => /upload/iblock/ca9/ca9afa0d964f5cc461e2f96652de7e60.gif
        )

    [DESCRIPTION] => Продукция нашей основной фабрики "Красный Гвоздь" в Санкт-Петербурге.
    [NAME] => Продукция
    [CHILDREN] => Array
        (
            [22] => Array
                (
                    [ID] => 22
                    [NAME] => Детская мебель
                    [SECTION_PAGE_URL] => /catalog/furniture/children/
                )

            [25] => Array
                (
                    [ID] => 25
                    [NAME] => Зеркала
                    [SECTION_PAGE_URL] => /catalog/furniture/mirrors/
                )

            [26] => Array
                (
                    [ID] => 26
                    [NAME] => Летняя коллекция
                    [SECTION_PAGE_URL] => /catalog/furniture/summer_collection/
                )

        )

    [PICTURE_PREVIEW] => Array
        (
            [SRC] => /upload/resize_cache/iblock/ca9/75_225_1/ca9afa0d964f5cc461e2f96652de7e60.gif
            [WIDTH] => 75
            [HEIGHT] => 63
        )

)

Отсюда видно что для массива CHILDREN нету свойства превьюшки, соответственно и вывод невозможен. Тут есть путь только к изображению секции($arSection['PICTURE_PREVIEW']['SRC']). Подскажите как добавить данное свойство в массив который хранит категории секции "Продукция". Или, где это настраивается? Для каждой категории(разделов) изображения указаны в админке.
спросил 24 Апр, 14 от Jacek (100 баллов)

1 Ответ

00 голосов
Нужно править компонент store.catalog.index, в файле component.php после 
Код
       $arResult[$arCat['ID']]['CHILDREN'] = array();
      while ($arRes = $dbRes->GetNext())
      {
добавить
Код
if ($arRes['PICTURE'])
$arRes['PICTURE'] = CFile::GetFileArray($arRes['PICTURE']);
 
и после 

Код
 $arResult[$arCat['ID']]['CHILDREN'][$arRes['ID']] = array(
добавить
Код
'PICTURE' => $arRes['PICTURE'], 

дальше в шаблоне настроить вывод картинок например так
Код
<img src="<? echo($arChild['PICTURE']['SRC']) ?>" width="100" height="100" /> 
ответил 09 Дек, 14 от KumaNeko (160 баллов)

Похожие вопросы

0 голосов
1 ответ
0 голосов
2 ответов
0 голосов
2 ответов