«Произвольные свойства» — универсальное хранилище типизированных данных для сайтов на 1С-Битрикс.
Телефон в шапке, адрес офиса, подпись в подвале, ссылка на документ, изображение или рекламный текст часто используются сразу в нескольких шаблонах и компонентах. Хранить такие значения непосредственно в коде неудобно, а создавать отдельный инфоблок для небольшого набора настроек — избыточно.
Модуль добавляет административный раздел «Контент → Произвольные свойства». В нём можно самостоятельно создавать поля нужного типа и изменять их значения через привычный интерфейс 1С-Битрикс. Разработчику достаточно один раз разместить компонент или вызов PHP API, после чего контент можно обновлять без редактирования файлов сайта.
Возможности решения:- единое хранилище общих данных и настроек сайта;
- стандартные типы пользовательских полей 1С-Битрикс: строка, число, дата, список, файл и другие;
- одиночные и множественные значения;
- визуальный HTML-редактор;
- выбор языка из зарегистрированных в системе;
- вывод значения компонентом tidx:customprops.value;
- PHP API для использования значений в шаблонах и бизнес-логике;
- значения по умолчанию;
- автоматическое, текстовое и необработанное форматирование;
- вывод изображений и ссылок на файлы;
- быстрое редактирование из публичной части;
- штатная проверка прав на пользовательские поля;
- дополнительные типы свойств инфоблоков «Да/Нет» и «Язык»;
- перенос структуры полей, значений и файлов через опциональную интеграцию со sprint.migration.
Модуль подойдёт для хранения:- телефонов, адресов и режима работы;
- заголовков и поясняющих текстов;
- лимитов и числовых параметров;
- юридических текстов и ссылок на документы;
- изображений, баннеров и файлов;
- HTML-блоков для шаблонов сайта;
- других значений, используемых одновременно в интерфейсе и программной логике.
Преимущества решения:- не требуется создавать отдельный инфоблок или highload-блок;
- структура свойств определяется под конкретный проект;
- значения редактируются штатными средствами 1С-Битрикс;
- компонент можно размещать через визуальный редактор;
- доступен простой PHP API;
- поддерживается разграничение прав;
- модуль не изменяет шаблон сайта и не создаёт демонстрационные данные.
Пример вывода значения компонентом:<?php
$APPLICATION->IncludeComponent(
'tidx:customprops.value',
'',
[
'CODE' => 'UF_PHONE',
'DEFAULT' => '+7 (000) 000-00-00',
],
false,
['HIDE_ICONS' => 'Y'],
);
?>
Пример получения значения через PHP API:<?php
use Bitrix\Main\Loader;
use Tidx\CustomProps\Values;
if (Loader::includeModule('tidx.customprops')) {
$phone = Values::getString('UF_PHONE');
}
Системные требования:- PHP 8.1 или новее;
- модуль fileman — для визуального HTML-редактора;
- модуль iblock — для дополнительных типов свойств инфоблоков.
Модули fileman, iblock и sprint.migration не обязательны для базовой работы хранилища.
Установите решение стандартным способом через Marketplace 1С-Битрикс.
Перейдите в административный раздел «Контент → Произвольные свойства».
Дополнительная настройка модуля после установки не требуется.
Создание свойства:- Откройте «Контент → Произвольные свойства».
- Нажмите «Добавить».
- Укажите название свойства.
- Задайте символьный код, например: UF_PHONE
- Выберите тип данных: строка, число, файл, список, дата, визуальный редактор или другой доступный тип.
- При необходимости включите множественное значение и настройте права доступа.
- Сохраните поле.
- В списке свойств выберите действие «Изменить значение» и заполните созданное поле.
Вывод на сайте:Для вывода значения используйте компонент: tidx:customprops.value
Основные параметры компонента:
- CODE — код свойства;
- DEFAULT — значение по умолчанию;
- FORMAT — формат вывода: auto, text или raw;
- EDIT — включение быстрого редактирования;
- TAG — HTML-тег области редактирования;
- CSS_CLASS — CSS-класс контейнера.
Префикс UF_ при обращении через PHP API необязателен: коды PHONE и UF_PHONE относятся к одному полю.
Важные замечанияHTML-поля выводятся без экранирования. Предоставляйте право на их редактирование только доверенным пользователям.
При включённых областях редактирования пользователи с правом записи увидят кнопку быстрого изменения значения в публичной части сайта.
Интеграция со sprint.migrationЕсли установлен модуль sprint.migration, автоматически появляется отдельная конфигурация «Произвольные свойства» и конструктор миграций «Произвольные свойства: поля и значения».
Конструктор позволяет переносить:
- структуру выбранных полей;
- текущие значения;
- варианты списков;
- связанные файлы.
Созданные миграции сохраняются в: /local/php_interface/migrations.tidx_customprops/
Для базовой работы решения установка sprint.migration не требуется.
Удаление решенияПри удалении модуля удаляются административные страницы, компонент и файлы оформления. Созданные свойства и их значения остаются в базе данных, чтобы их можно было восстановить после повторной установки.
Если требуется полностью удалить данные, предварительно сделайте резервную копию и вручную удалите ненужные свойства.
Режим работы: пн-пт с 09:00-18:00.
Среднее время реакции на обращение 24 часа.
techindex@mail.ru