Дополнительное поле для элементов инфоблока в Битрикс?
Нужно добавить дополнительное поле в элементы инфоблока в котором будет храниться простая строка. Можно ли это как-то сделать не трогая свойств инфоблока?
Вы хотите создать собственную таблицу в базе данных для хранения этой строки
Думаю нет, это будет через чур
создать и вывести поле в битрикс это проще всего
Это именно то чего я хочу, вопрос только в том как-это сделать максимально безболезненно и элегантно.
В свойствах нужного мне инфоблока, хранятся характеристики сущности которую они описывают. На детальной странице эти свойства перебираются и выводятся.
Сейчас мне нужно добавить поле (или что-то типа того), в котором будут храниться ссылки, выводимые на некоторых детальных страницах тех элементов у которых она будет добавлена. Да можно конечно запендюрить новое свойство и сохранить свойство туда, не каких проблем. Но почему мне так не хочется делать:
1. Эта ссылка не имеет никакого отношения к сущности которую описывает инфоблок и запихивать её в свойства будет какой-то странной мешаниной;
2. Сделав так придётся и код подредактировать, чтобы он пропускал данное свойство при выводе. Не проблема конечно, но это костыль, а хочется без них.
Хотелось бы что-то вроде Доп.полей у разделов, что то такое возможно? Или только создавать какой нибудь HL-блок и реализовывать через него? Но как я понимаю тут тоже без привязки через свойство не обойтись
JastaFly, на мой взгляд какие-то странные обоснования.
Думаю нет, это будет через чур
- я вам не просто так задал вопрос где вы собрались хранить данные, когда вы на него ответите, тогда и получите ответ на свой вопрос.
не имеет никакого отношения к сущности которую описывает инфоблок и запихивать её в свойства будет какой-то странной мешаниной
- раз данные относятся к элементу то и хранить данные нужно в нём, как раз странно будет хранить эти данные в отдельном месте.
- вы можете под эту сущность создать отдельный инфоблок, в котором делать привязку к элементу и далее через значение свойства элемента указанного в качестве привязки PROPERTY_.PROPERTY_ получать ссылку в элементе другого инфоблока https://dev.1c-bitrix.ru/api_help/iblock/classes/c...
что-то вроде Доп.полей у разделов
- доп.поля не от хорошей жизни были сделаны в разделах, это пользовательские поля, которые являются инструмент,ом позволяющий добавлять к объектам системы поля, не предусмотренные штатным функционалом. https://dev.1c-bitrix.ru/learning/course/index.php...
Элементы инфоблока они не поддерживают
Или только создавать какой нибудь HL-блок и реализовывать через него?
- Создайте в инфоблоке поле тип Справочник и будет у вас это храниться в HL-блоке
Я думаю что лучше всё-же завести свойство, и очень страшно слышать что это будет костыль, потому что какое-то другое решение будет костылём, и будет выбираться отдельным запросом, а свойства элементов выбираются одним запросом с выборкой элементов, таблица свойств присоединяется в запросе.
Вариант сделать HL-блок и в нем создать два поля, связь с элементом, и строка. Но это довольно сложно будет администрировать без кастомной формы редактирования элементов инфоблока.
Если ссылка выводится на детальной странице элемента, она имеет к нему отношение
Ссылка не имеет отношения к сущности которую она описывает, просто появилась идея размещать такие ссылки на страницах, а их нужно где-то хранить, вот я и задался вопросом что для этого лучше использовать
В итоге остановился на варианте с созданием нового свойства для инфоблка, так как особых альтернатив нет, а все прочие варианты только усложняют логику