Назад

Расширение функциональности разделов через пользовательские свойства в 1С-Битрикс

Главная
Блог
Расширение функциональности разделов через пользовательские свойства в 1С-Битрикс

При разработке интернет-магазинов и информационных порталов на платформе 1С-Битрикс часто возникает необходимость расширить стандартный функционал разделов инфоблоков. Пользовательские свойства разделов (User Fields) открывают широкие возможности для кастомизации - от управления визуальным оформлением до реализации сложной бизнес-логики. Это мощный инструмент, который позволяет хранить дополнительные данные для каждого раздела и использовать их в различных сценариях работы сайта.

Создание пользовательских свойств для разделов

  1. Доступ к настройкам раздела
    Перейдите в админ-панель Битрикс и откройте нужный раздел инфоблока:

    • Через кнопку «Изменить»

    • Или кликом по ID раздела

  2. Создание свойств
    Во вкладке «Доп. свойства» создайте новое пользовательское свойство. При отсутствии вкладки сбросьте настройки формы через синюю шестеренку.

  3. Типы полей и их применение
    В зависимости от задач можно использовать различные типы полей:

    • Строка - для заголовков, названий, коротких описаний

    • Текст/HTML - для расширенных описаний, контентных блоков

    • Файл - для иконок, фоновых изображений, документов

    • Список - для выбора вариантов оформления или поведения

    • Дата/Время - для ограничения акций по времени

    • Да/Нет - для включения/отключения функций

Практические примеры использования

1. Управление визуальным оформлением

<?
// Получаем настройки оформления раздела
$sectionSettings = CIBlockSection::GetList(
    false,
    Array(
        "IBLOCK_ID" => 14, 
        "ID" => $arResult['ID']
    ),
    false,
    Array("UF_BG_COLOR", "UF_HEADER_IMAGE", "UF_TEMPLATE"),
    false
);

$settings = $sectionSettings->Fetch();

// Применяем настройки оформления
if ($settings['UF_BG_COLOR']) {
    echo '<style>.section-header { background-color: '.$settings['UF_BG_COLOR'].'; }</style>';
}
?>

2. Бизнес-логика и функционал

<?
// Получаем бизнес-параметры раздела
$businessParams = CIBlockSection::GetList(
    false,
    Array("IBLOCK_ID" => 14, "ID" => $arResult['ID']),
    false,
    Array("UF_MIN_ORDER", "UF_SORTING", "UF_HIDE_PRICE"),
    false
);

$params = $businessParams->Fetch();

// Применяем бизнес-правила
if ($params['UF_MIN_ORDER']) {
    echo '<div class="min-order">Минимальный заказ: '.$params['UF_MIN_ORDER'].'</div>';
}
?>

3. Динамический контент

<?
// Получаем контентные блоки раздела
$sectionContent = CIBlockSection::GetList(
    false,
    Array("IBLOCK_ID" => 14, "ID" => $arResult['ID']),
    false,
    Array("UF_ADDITIONAL_TEXT", "UF_BANNER_TEXT", "UF_FEATURES"),
    false
);

$content = $sectionContent->Fetch();

// Выводим дополнительный контент
if ($content['UF_ADDITIONAL_TEXT']) {
    echo '<div class="additional-content">'.$content['UF_ADDITIONAL_TEXT'].'</div>';
}
?>

4. SEO + дополнительные сценарии

<?
// Комплексное получение свойств
$sectionData = CIBlockSection::GetList(
    false,
    Array(
        "IBLOCK_ID" => 14, 
        "ID" => $arResult['ID'],
        "ACTIVE" => "Y"
    ),
    false,
    Array("UF_TITLE", "UF_KEYWORDS", "UF_DESCRIPTION", "UF_PROMO_BANNER", "UF_SORT_ORDER"),
    false
);

$data = $sectionData->Fetch();

// SEO настройки
if ($data['UF_TITLE']) {
    $APPLICATION->SetPageProperty("title", $data['UF_TITLE']);
}

// Бизнес-логика
if ($data['UF_PROMO_BANNER']) {
    showPromoBanner($data['UF_PROMO_BANNER']);
}
?>

Преимущества подхода

  • Гибкость - каждый раздел может иметь уникальные настройки

  • Удобство - управление через стандартный интерфейс Битрикс

  • Производительность - данные кэшируются вместе с разделом

  • Масштабируемость - легко добавлять новые свойства без изменения структуры БД

Пользовательские свойства разделов позволяют создавать по-настоящему динамичные и адаптивные структуры, где каждый раздел может иметь собственное поведение и оформление, соответствующее его специфике.

Нужен надежный исполнитель?
Разрабатываем сайты, выполняем миграцию на Битрикс, дорабатываем функционал, сопровождаем проекты, а также занимаемся поисковым продвижением и комплексным маркетингом
Получить консультацию
Читайте по теме
Все статьи
Нужен надежный исполнитель?
Разрабатываем сайты, выполняем миграцию на Битрикс, дорабатываем функционал, сопровождаем проекты, а также занимаемся поисковым продвижением и комплексным маркетингом
Получить консультацию
Все статьи