Категории

Универсальные свойства привязки

Описание

Гибкая привязка к любым данным в Битрикс

Модуль «Универсальные свойства привязки» решает задачу, которая раньше требовала доработок или сложных решений: он позволяет создавать свойства, которые ссылаются на любые сущности системы. Речь не только об элементах инфоблоков — вы можете привязать страницу к пользователю, раздел к валюте или товар к конкретному уроку из модуля обучения. Это работает как для главного модуля, так и для инфоблоков. Вместо того чтобы писать кастомный код под каждую задачу, вы просто выбираете нужный тип данных и настраиваете фильтр.

В основе модуля лежит компонент «Выбор из списка». Он может заменить стандартный тег select и предлагает больше возможностей: варианты берутся не только из базы данных, но и из подготовленного массива или даже готового HTML-кода. Это значит, что вы не ограничены жесткой структурой — можно подмешивать статические пункты, форматировать вывод или подгружать данные из внешнего API через свой источник.

Режимы работы: от простого списка до AJAX-поиска

Модуль не диктует, как пользователю выбирать значение. Для небольших справочников подойдет обычный выпадающий список — он не требует лишних запросов и работает мгновенно. Если же база вариантов большая (например, тысячи товаров или пользователей), включается AJAX-подгрузка: данные запрашиваются порционно, без перезагрузки страницы. Это особенно удобно в административной панели, где скорость работы критична.

Для сценариев, где пользователь не знает точного названия, реализован динамический JavaScript-поиск. Вы начинаете вводить текст, а система предлагает подходящие варианты. Такой интерфейс знаком каждому по поисковым строкам и не требует обучения. Все три режима работают «из коробки» — вам нужно только указать, какой из них использовать для конкретного свойства.

Интеграция с другими модулями и готовые источники

Одна из сильных сторон решения — совместимость со сторонними разработками. Модуль дружит с «Свойства-таблицы» (добавляет тип колонки «Привязка») и с бесплатным модулем «Дополнительные настройки», расширяя их функциональность. Это значит, что вы не замыкаетесь в экосистеме одного продукта, а можете комбинировать инструменты под свои задачи.

В комплекте с модулем поставляется более 25 готовых источников данных. Среди них: элементы и разделы инфоблоков (с фильтром по конкретному разделу), сайты, валюты, группы пользователей (с возможностью исключения), пользователи (с отбором по группам), склады и службы доставки (при наличии модуля интернет-магазина). Поддерживаются также блоги, форумы, веб-формы, опросы, рассылки, баннеры, курсы обучения и типы цен. Для каждого источника можно задать дополнительные условия выборки — например, показывать только подразделы определенного раздела или только активных пользователей.

Работа с хайлоадблоками и пользовательскими полями

Отдельного внимания заслуживает поддержка хайлоадблоков. Вы можете привязываться как к целым HL-блокам (с ограничением по списку), так и к их отдельным элементам. Причем для элементов можно гибко настроить, какое поле будет отображаться в списке, а какое — передаваться как значение. Это открывает возможности для сложных справочников: например, привязать заказ к адресу доставки из хайлоадблока, а в списке показывать не ID, а полный адрес.

Для пользовательских полей типа «Список» модуль умеет собирать варианты из нескольких полей сразу, причем из разных сущностей. Допустим, у вас есть HL-блок с городами, и вы хотите, чтобы в свойстве пользователя отображались города из этого HL-блока — это делается без программирования. Просто выбираете источник «Списки (польз. поля)» и указываете, откуда брать значения. Такой подход избавляет от дублирования данных и упрощает поддержку сайта.

Создание собственных источников и логики выборки

Если готового источника не хватает, модуль позволяет написать свой. Вы определяете, какие варианты показывать и как их получать — из внешней базы, по API, на основе прав доступа или результатов расчетов. Это дает полный контроль над логикой привязки без взлома ядра Битрикс. Например, можно сделать свойство «Ответственный менеджер», которое показывает только тех сотрудников, у которых есть доступ к определенному разделу, или привязку «Ближайший склад», рассчитываемый по геолокации пользователя.

Документация и примеры API прилагаются к модулю, а в блоге автора есть подробный обзор версии 2.0 с практическими кейсами. Это не «черный ящик» — вы можете адаптировать решение под нестандартные бизнес-процессы, не теряя в производительности и не накапливая технический долг.

Часто задаваемые вопросы

Универсальные свойства привязки
4 000 ₽
5 / 5
7 отзывов 44 обсужденией

Характеристики

Версия 2.3.0
Добавлен 05.12.2013
Обновлён 08.04.2022
Установок Более 1000 раз
Код grain.links
Адаптивный Нет
Composite Нет