PHPackages                             ge1i0n/bitrix-options - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. ge1i0n/bitrix-options

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

ge1i0n/bitrix-options
=====================

2.0.2(5mo ago)1085321MITPHPPHP &gt;=8.1

Since Jul 27Pushed 5mo ago2 watchersCompare

[ Source](https://github.com/Ge1i0N/bitrix-options)[ Packagist](https://packagist.org/packages/ge1i0n/bitrix-options)[ Docs](https://github.com/ge1i0n/bitrix-options)[ RSS](/packages/ge1i0n-bitrix-options/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (10)DependenciesVersions (14)Used By (1)

[![Latest Stable Version](https://camo.githubusercontent.com/c0732fe76d39a3696776f1b0db46597265ce2288739c1259a2bb2123c744a703/68747470733a2f2f706f7365722e707567782e6f72672f67653169306e2f6269747269782d6f7074696f6e732f762f737461626c652e737667)](https://packagist.org/packages/ge1i0n/bitrix-options/)[![Total Downloads](https://camo.githubusercontent.com/0dbc24aaa920f15288d132d59765725aac342e069225a10b4cce7ac48766b5be/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f67653169306e2f6269747269782d6f7074696f6e732e7376673f7374796c653d666c6174)](https://packagist.org/packages/ge1i0n/bitrix-options)

Bitrix Options - генератор форм настроек в административной панели Битрикс
==========================================================================

[](#bitrix-options---генератор-форм-настроек-в-административной-панели-битрикс)

### Поддержка версий

[](#поддержка-версий)

BitrixOptionsmpm.optionsphp1.0+1.0+7.0+1.0+, 2.0+2.0+8.1+### Установка через маркетплейс

[](#установка-через-маркетплейс)

1. Установить [модуль mpm.options](http://marketplace.1c-bitrix.ru/solutions/mpm.options/) из маркетплейса bitrix.
2. Создать файл настроек модуля (options.php или подобный)
3. Подключить модуль и вызвать генератор формы, передав нужные параметры ```
    Bitrix\Main\Loader::includeModule('mpm.options');

    Form::make('youmodule.id', [
        Tab::make('first', 'Первая вкладка', []),
        Tab::make('second', 'Вторая вкладка', []),
    ]);
    ```

### Установка через composer

[](#установка-через-composer)

1. Установить пакет `ge1i0n/bitrix-options````
    composer require ge1i0n/bitrix-options
    ```
2. Создать файл настроек модуля (options.php или подобный)
3. Подключить вызвать генератор, передав нужные параметры ```
    Gelion\BitrixOptions\Form::make('youmodule.id', [
        Gelion\BitrixOptions\Tab::make('first', 'Первая вкладка', [
            Gelion\BitrixOptions\Fields\Text::make('TEXT'),
        ]),
        Gelion\BitrixOptions\Tab::make('second', 'Вторая вкладка', [
            Gelion\BitrixOptions\Fields\Number::make('NUMBER'),
        ]),
    ]);
    ```

### Пример установки в свой модуль для маркетплейса

[](#пример-установки-в-свой-модуль-для-маркетплейса)

1. Скопировать пакет к себе в модуль
2. Зарегистрировать классы модуля в файле `include.php`, прописав вручную корректные пути к классам, или загрузив автолоадером. Зарегистрировать вручную можно например так: ```
    Bitrix\Main\Loader::registerAutoLoadClasses('youmodule.id', [
        'Gelion\\BitrixOptions\\Tab'                              => '/lib/Tab.php',
        'Gelion\\BitrixOptions\\Form'                             => '/lib/Form.php',
        'Gelion\\BitrixOptions\\Enums\\Color'                     => '/lib/Enums/Color.php',
        'Gelion\\BitrixOptions\\Enums\\Width'                     => '/lib/Enums/Width.php',
        'Gelion\\BitrixOptions\\Enums\\Height'                    => '/lib/Enums/Height.php',
        'Gelion\\BitrixOptions\\Enums\\Resize'                    => '/lib/Enums/Resize.php',
        'Gelion\\BitrixOptions\\Enums\\Display'                   => '/lib/Enums/Display.php',
        'Gelion\\BitrixOptions\\Enums\\TagColor'                  => '/lib/Enums/TagColor.php',
        'Gelion\\BitrixOptions\\Enums\\AlertIcon'                 => '/lib/Enums/AlertIcon.php',
        'Gelion\\BitrixOptions\\Enums\\AlertSize'                 => '/lib/Enums/AlertSize.php',
        'Gelion\\BitrixOptions\\Enums\\TextStyle'                 => '/lib/Enums/TextStyle.php',
        'Gelion\\BitrixOptions\\Enums\\AlertTextPosition'         => '/lib/Enums/AlertTextPosition.php',
        'Gelion\\BitrixOptions\\Fields\\Date'                     => '/lib/Fields/Date.php',
        'Gelion\\BitrixOptions\\Fields\\Text'                     => '/lib/Fields/Text.php',
        'Gelion\\BitrixOptions\\Fields\\Alert'                    => '/lib/Fields/Alert.php',
        'Gelion\\BitrixOptions\\Fields\\Email'                    => '/lib/Fields/Email.php',
        'Gelion\\BitrixOptions\\Fields\\Number'                   => '/lib/Fields/Number.php',
        'Gelion\\BitrixOptions\\Fields\\Select'                   => '/lib/Fields/Select.php',
        'Gelion\\BitrixOptions\\Fields\\Heading'                  => '/lib/Fields/Heading.php',
        'Gelion\\BitrixOptions\\Fields\\Checkbox'                 => '/lib/Fields/Checkbox.php',
        'Gelion\\BitrixOptions\\Fields\\Textarea'                 => '/lib/Fields/Textarea.php',
        'Gelion\\BitrixOptions\\Fields\\Condition'                => '/lib/Fields/Condition.php',
        'Gelion\\BitrixOptions\\Fields\\HtmlEditor'               => '/lib/Fields/HtmlEditor.php',
        'Gelion\\BitrixOptions\\Fields\\ColorPicker'              => '/lib/Fields/ColorPicker.php',
        'Gelion\\BitrixOptions\\Traits\\WithTag'                  => '/lib/Traits/WithTag.php',
        'Gelion\\BitrixOptions\\Traits\\WithHint'                 => '/lib/Traits/WithHint.php',
        'Gelion\\BitrixOptions\\Traits\\WithColor'                => '/lib/Traits/WithColor.php',
        'Gelion\\BitrixOptions\\Traits\\WithModuleId'             => '/lib/Traits/WithModuleId.php',
        'Gelion\\BitrixOptions\\Traits\\WithStyleClass'           => '/lib/Traits/WithStyleClass.php',
        'Gelion\\BitrixOptions\\Traits\\WithDisplayWithoutValue'  => '/lib/Traits/WithDisplayWithoutValue.php',
    ]);
    ```

🧩 Новые типы полей (v2.x)
-------------------------

[](#-новые-типы-полей-v2x)

ПолеНазначение`Date`Поле Text с типом date`Email`Поле Text с типом email`Heading`Поле, выводящий заголовок`Select`Замена полям Dropdown и MultiselectДополнительные, свои типы полей больше не нужно регистрировать отдельно, можете использовать их непосредственно в конструкторе формы.

Схема работы
------------

[](#схема-работы)

На странице настроек необходимо вызвать генератор формы, в который передаётся id вашего модуля.

```
   Gelion\BitrixOptions\Form::make('youmodule.id', []);
```

Вторым параметром в генератор формы передаётся массив табов на странице формы. Необходимо передать как минимум один таб, для корректной генерации и заполнения страницы.

```
    Gelion\BitrixOptions\Form::make('youmodule.id', [
       Gelion\BitrixOptions\Tab::make('first', 'Первая вкладка', []),
    ]);
```

В таб, вторым параметром передаётся массив полей для отображения. В отличие от первой версии пакета - порядок задаётся не полем сортировки, а непосредственно порядком передачи в массиве.

```
    Gelion\BitrixOptions\Form::make('youmodule.id', [
       Gelion\BitrixOptions\Tab::make('first', 'Первая вкладка', [
         Gelion\BitrixOptions\Fields\Text::make('TEXT'),
      ]),
    ]);
```

Типы полей
----------

[](#типы-полей)

#### Общая информация

[](#общая-информация)

Все типы полей отображается через статичный метод `make()`, в который передаётся один или два параметра - ключ в базе данных и строка для вывода пояснения. Для типов полей который выводят данные, но ничего не хранят, передаётся один параметр. В случае передачи одного параметра в поля, которые отображают данные настроек ключ будет использован как строка пояснения. Также, все методы, которые наследуются от поля Text имеют общие Fluent методы. Они будут описаны только в текстовом поле, повторяться не будут.

### Заголовок

[](#заголовок)

Новый тип поля, заменяющий группы полей в предыдущей версии модуля. Больше нет необходимости делать группировку, просто выведите заголовок в нужном месте, передав в него текст для вывода.

```
   \Gelion\BitrixOptions\Fields\Heading::make('Я заголовок группы');
```

### Предупреждение

[](#предупреждение)

Вывод информационного сообщения, с настраиваемым размером, расположением текста и иконкой. Поле можно модифицировать через текучий интерфейс, передав в методы Enum необходимых значений свойств. [документации Bitrix](https://dev.1c-bitrix.ru/api_d7/bitrix/ui/messages/alerts.php)

```
   \Gelion\BitrixOptions\Fields\Alert::make('Я предупрждение')
        ->setIcon(\Gelion\BitrixOptions\Enums\AlertIcon::INFO)
        ->setSize(\Gelion\BitrixOptions\Enums\AlertSize::XS)
        ->setTextPosition(\Gelion\BitrixOptions\Enums\AlertTextPosition::CENTER);
```

### Текст

[](#текст)

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

```
   \Gelion\BitrixOptions\Fields\Text::make('TEXT_OPTION', 'Я текстовое поле')
        ->disabled(true)
        ->readonly(true)
        ->setDefault('default')
        ->setAutocomplete('username')
        ->setHint('Я строка подсказки')
        ->setPlaceholder('Я строка плейсхолдер')
        ->setStyle(\Gelion\BitrixOptions\Enums\TextStyle::ROUND)
        ->setDisplay(\Gelion\BitrixOptions\Enums\Display::BLOCK)
        ->setTag('Я строка тега', \Gelion\BitrixOptions\Enums\TagColor::SUCCESS)
        ->setHeight(\Gelion\BitrixOptions\Enums\Height::MD)
        ->setWidth(\Gelion\BitrixOptions\Enums\Width::W75)
        ->setColor(\Gelion\BitrixOptions\Enums\Color::SUCCESS);
```

### Дата

[](#дата)

Вывод поля для даты - текстовое поле, но с типом date.

```
   \Gelion\BitrixOptions\Fields\Date::make('DATE_OPTION', 'Я поле даты');
```

### Email

[](#email)

Вывод поля для электронной почты - текстовое поле, но с типом email.

```
   \Gelion\BitrixOptions\Fields\Email::make('EMAIL_OPTION', 'Я поле электронной почты');
```

### Number

[](#number)

Вывод поля для чисел - текстовое поле, но с типом number. Имеет три дополнительных метода `min()`, `max()`, `step()`.

```
   \Gelion\BitrixOptions\Fields\Number::make('NUMBER_OPTION', 'Я поле ввода чисел')
        ->min(0)
        ->max(10)
        ->step(2);
```

### Checkbox

[](#checkbox)

Вывод переключателя, основан на текстовом поле. Хранит значения в базе в формате `Y` и `N`, выводится в виде чекбокса.

```
   \Gelion\BitrixOptions\Fields\Checkbox::make('CHECKBOX_OPTION', 'Я поле ввода чекбокса');
```

### ColorPicker

[](#colorpicker)

Вывод поля для выбора цвета, основано на текстовом поле. Имеет два дополнительных метода `cols()`, `rows()`. Обратите внимание - при сохранении страницы, но не выбранном цвете по-умолчанию будет всегда сохраняться чёрный цвет.

```
   \Gelion\BitrixOptions\Fields\ColorPicker::make('CHECKBOX_OPTION', 'Я поле ввода чекбокса');
```

### Textarea

[](#textarea)

Поле для ввода многострочного ввода данных, основано на текстовом поле. На данный момент реализованы все способы изменять состояния поля, но не все они ведут себя корректно.

```
   \Gelion\BitrixOptions\Fields\Textarea::make('TEXTAREA_OPTION', 'Я поле многостраничного ввода')
        ->setResize(\Gelion\BitrixOptions\Enums\Resize::RESIZE_X)
        ->cols(10)
        ->rows(10);
```

### Select

[](#select)

Селектор для выбора значений из списка, основано на текстовом поле. Имеет три дополнительных метода `options()` - для передачи опций выбора, `size()` - для передачи атрибута size, `multiple()` - для включения множественного выбора.

```
   \Gelion\BitrixOptions\Fields\Select::make('SELECT_OPTION', 'Я поле выбора из списка')
        ->options([
            'key-1' => 'Вариант 1',
            'key-2' => 'Вариант 2',
        ])
        ->size()
        ->multiple();
```

### HtmlEditor

[](#htmleditor)

Текстовый редактор, с возможностью переключаться между типами text, html и визуальный редактор.

```
   \Gelion\BitrixOptions\Fields\HtmlEditor::make('HTML_EDITOR_OPTION', 'Я поле редактора')
        ->setHint('Я строка подсказки');
```

### Condition

[](#condition)

Поле выбора условий, основанное на классе CCatalogCondTree.

```
   \Gelion\BitrixOptions\Fields\Condition::make('CONDITION_OPTION', 'Я поле условия');
```

📚 Дополнительно
---------------

[](#-дополнительно)

- Документация по UI Bitrix: [dev.1c-bitrix.ru](https://dev.1c-bitrix.ru/api_d7/bitrix/ui/index.php)

###  Health Score

48

—

FairBetter than 94% of packages

Maintenance74

Regular maintenance activity

Popularity25

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity67

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~142 days

Recently: every ~285 days

Total

12

Last Release

177d ago

Major Versions

1.4.1 → 2.0.02025-05-27

PHP version history (3 changes)1.0.0PHP &gt;=7.0.0

1.2.0PHP &gt;=7.3.0

2.0.0PHP &gt;=8.1

### Community

Maintainers

![](https://www.gravatar.com/avatar/2223361bbd3b57f83ae5b6a56dadea6bfded10399ec54dfd8aeba63dcbf68208?d=identicon)[Ge1i0N](/maintainers/Ge1i0N)

---

Top Contributors

[![Ge1i0N](https://avatars.githubusercontent.com/u/6265043?v=4)](https://github.com/Ge1i0N "Ge1i0N (44 commits)")

---

Tags

bitrixbitrix optionsbitrix-settings

### Embed Badge

![Health badge](/badges/ge1i0n-bitrix-options/health.svg)

```
[![Health](https://phpackages.com/badges/ge1i0n-bitrix-options/health.svg)](https://phpackages.com/packages/ge1i0n-bitrix-options)
```

###  Alternatives

[bitrix-expert/bbc

Bitrix basis components

10242.9k1](/packages/bitrix-expert-bbc)[bitrix-expert/tools

Helpers for developers on Bitrix

3720.8k1](/packages/bitrix-expert-tools)[bitrix-expert/bbc-module

Module with classes for the basis components

1951.8k1](/packages/bitrix-expert-bbc-module)[maximaster/tools.events

Библиотека осуществляет помощь для автоматической загрузки обработчиков событий при соблюдении определенной структуры

2530.2k](/packages/maximaster-toolsevents)[webarchitect609/bitrix-user-type

Set of custom Bitrix user property types and basic auxiliary functionality to help develop new types as easy and fast as it possible.

1418.4k1](/packages/webarchitect609-bitrix-user-type)[webarchitect609/bitrix-neverinclude

Automatic Bitrix modules loader helps you to forget about CModule::IncludeModule and Loader::includeModule.

1115.1k](/packages/webarchitect609-bitrix-neverinclude)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
