Идея достаточно объемная, но, думаю, востребованная. HL-блокам не хватает немного функционала стандартных инфоблоков и тогда продукт станет массовым и удобным: 1) Шаблон пути на страницу списка элементов хл-блока 2) Шаблон пути на детальную страницу элемента хл-блока 3) Участвует ли хл-блок в модулей поиска 4) Участие в модули поиска конкретного пользовательского поля хл-блока
Нюанс в том, что хл-блоки не нацелены на массу (если рассуждать в разрезе маркетинга). Это очень специфичный инструмент, который разработчик (даже не клиент) должен применять осознанно.
Про индексацию поиском хл-блоков думали, но тут главная проблема, что непонятно что считать детальной страницей элемента. В хл-блоках отсутствует даже понятие заголовка элемента (что важно для поиска) - заголовком может быть любое поле, или не быть им вовсе.
Это все конечно решается выведением хл-блоков в ряд к инфоблокам, но такое не планируется.
Добрый день. Возник момент с кастомным кешированием в своем компоненте. Согласно этому курсу (https://dev.1c-bitrix.ru/learning/course/?COURSE_ID=43&LESSON_ID=3053), подключение шаблона можно размещать как в кешируемой области, так и вне её. При подключении шаблона в кешируемой области собственного компонента со сложным кешированием шаблон не отрабатывает вообще - сразу выводится html-кеш. Разница в том, что в стандартных компонентах используется метод StartResultCache и при этом template.php кешируется полностью и выводится как html-кеш. При этом из кеша на хите достаются переменные VARS из файла кеша и передаются в component_epilog.php, что не происходит, если строить свое кеширование согласно вышеуказанному курсу. Покопавшись в исходниках, выяснил, что в метод startResultCache() вшит также метод includeComponentEpilog(), которого нет в классах кастомного кеширования и в документации. При этом входящие данные для него от родительского компонента в своем дочернем компоненте получить нельзя, так как свойство, в котором хранится путь и данные для метода includeComponentEpilog() лежат в родительском свойстве __component_epilog, которое имеет модификатор доступа private и недоступен в потомке. В связи с этим кастомное кеширование получается неполноценным, т.к. для использования в шаблонах component_epilog, нужно подключение шаблона обязательно выводить из кешируемой области. Прошу дать возможность разработчику самостоятельно подключать эпилог компонента в своем компоненте.
Про индексацию поиском хл-блоков думали, но тут главная проблема, что непонятно что считать детальной страницей элемента. В хл-блоках отсутствует даже понятие заголовка элемента (что важно для поиска) - заголовком может быть любое поле, или не быть им вовсе.
Это все конечно решается выведением хл-блоков в ряд к инфоблокам, но такое не планируется.