Дорабатываем Highload-блоки в шаблоне "Современный интернет-магазин"

Proxyr

Мой дом здесь!
Регистрация
17 Авг 2011
Сообщения
156
Реакции
240
Highload-блоки - модуль для работы с произвольными наборами данных в условиях высоких нагрузок.
Но при создании коммерческих версий шаблонов для маркетплейс, разработчики не используют пресловутые условия "высоких нагрузок".
Поэтому даже сам "Битрикс" грешит недоработками в этом направлении. На сегодняшний день "bitrix.eshop" версии 16.0.0 от 22.12.2015, не готов работать со справочниками больших размеров.
А именно компоненты "catalog.section", "catalog.top" и все остальные, в том числе и партнёрские решения использующие типовой "result_modifier.php" из этих компонентов.
Исключение составляет компонент "catalog.element", в последних версиях эту проблему исправили, хотя многие разработчики продолжают использовать старую версию, к примеру в шаблоне "Apparel", где и была выявлена проблема.
В чем же суть проблемы? Дело в том что компоненты, для каждого элемента списка выводят полный(!) справочник элементов, а ненужные для отображения элементы отмечает style="display:none;"
Допустим я использую торговые предложения и у меня есть три справочника - "Цвет", "Размер" и "Вес" и в каждом по 100 позиций.
На главной странице каталога вывожу список из девяти элементов и трёх торговых предложений по 1 для каждого Цвет/Размер/Вес.
Несмотря на представленное предложение одного цвета и одного размера и веса, в коде будут все 300 элементов справочника, ненужные будут просто скрыты. И так для каждого из девяти.
Если справочники на тысячи элементов, и на странице каталога есть кнопка "Показать все" может случится коллапс.
Если у вас небольшие справочники, тогда всё работает сносно.
Мой "костыль", наверное, не очень изящен, но страницу облегчает. Весь справочник выводится не будет, только элементы справочника, используемые на этой странице. Но гипотетически, если нажать кнопку "Показать все", вылезет весь справочник :)


За подсказки по решению благодарю Для просмотра ссылки Войди или Зарегистрируйся
 
Последнее редактирование:

Proxyr

Мой дом здесь!
Регистрация
17 Авг 2011
Сообщения
156
Реакции
240
Если у вас компонент "catalog.element" (Элементы раздела) до сих пор не обновлен и продолжает выводить весь справочник, вот решение проблемы:
Скрытое содержимое доступно для зарегистрированных пользователей!
 
Сверху