Автоматическая установка изображения раздела из товара в 1С-Битрикс

Внимание! Работает режим премодерации. Все сообщения публикуются после проверки!
Страницы: 1
Ответить
RSS
Автоматическая установка изображения раздела из товара в 1С-Битрикс
Как автоматически установить картинку раздела на основе товара из этого раздела в CMS 1С-Битрикс. Разбор кода

В этой статье мы рассмотрим, как автоматически установить картинку  раздела на основе товара в CMS 1С-Битрикс. Это полезно, если нужно  связать разделы с изображениями товаров и автоматически их обновлять.
Изменено: Валерий Макеев - 29.09.2025 11:34:40
Код устанавливает картинку раздела на основе изображения первого активного товара с детальной картинкой (DETAIL_PICTURE) в этом разделе, игнорируя PREVIEW_PICTURE и обрабатывая только корневые разделы без подразделов.

Код
<?php
require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");

\Bitrix\Main\Loader::includeModule('iblock');

$sections = CIBlockSection::GetList(
    ['ID' => 'ASC'],
    [
        'IBLOCK_ID' => 17,
        'PICTURE' => false,
        'SECTION_ID' => false // только корневые разделы
    ],
    false,
    ['ID']
);

while ($section = $sections->GetNext()) {
    $element = CIBlockElement::GetList(
        ['SORT' => 'ASC'],
        [
            'IBLOCK_ID' => 17,
            'ACTIVE' => 'Y',
            '!DETAIL_PICTURE' => false,
            'SECTION_ID' => $section['ID'],
            'INCLUDE_SUBSECTIONS' => 'N' // не искать в подразделах
        ],
        false,
        ['nTopCount' => 1],
        ['DETAIL_PICTURE']
    )->Fetch();

    if ($element && !empty($element['DETAIL_PICTURE'])) {
        $fileArray = CFile::MakeFileArray($element['DETAIL_PICTURE']);
        $sectionUpdater = new CIBlockSection;
        $sectionUpdater->Update($section['ID'], ['PICTURE' => $fileArray]);
    }
}
?>
Страницы: 1
Ответить
Форма ответов
Текст сообщения*
Перетащите файлы
Ничего не найдено
Файл
 

Стоимость услуг по разработке и сопровождению сайтов на 1C-Битрикс

Техническая поддержка

сайтов на CMS 1C-Битрикс

от 20 000 рублей/месяц
Оптимизация производительности действующих интернет-проектов, наполнение и сопровождение, полная техническая поддержка и продвижение в поисковых сетях.

* стоимость зависит от объема и сложности выполняемых работ

Перенос сайтов на «1С-Битрикс»

сайты на платформе «1С-Битрикс» — это удобство, надежность и высокая посещаемость

от 12 000 рублей
Перенос сайтов с любых CMS и статичных страниц на платформу «1С-Битрикс», с учетом дизайна, верстки и урл-адресов. С сохранением всей информации и структуры сайта.

* зависит от объема выполняемых работ.

Лечение сайтов от вирусов

восстановление сайта и подъем версии PHP

от 25 000 рублей
Лечение сайтов на решениях АСПРО и прочих.

* полный комплекс лечения проекта и закрытия дыр