Элементарные области или бережливая кастомизация

Элементарные области или бережливая кастомизация

11 декабря 2017


Автор: Коваленко Алексей
Являясь внедренцами Битрикс мы часто встречаемся с мелочами и кастомизациями, выполнение которых приводит к снятию с поддержки обновлений целый ряд узлов и компонентов. Приходится искать компромиссы и решать с Заказчиком целесообразность таких кастомизаций.

А вам встречались ли вам задачки, когда требуется пусть и мелочная, но кастомизация компонента или участка, входящего в состав комплексных компонентов?
Например
Требуется, чтобы под ценником на детальной странице товара выводилась надпись
"Цены уточняйте у менеджера"

В большинстве решений детальная страница работает в рамках комплексного компонента catalog и кастомизация его шаблона приводит к тому, что все участки и компоненты, входящие в состав комплексного компонента практически выключаются с поддержки обновлений.
Тем не менее вебмастера идут на такой риск ради выполнения задачи или разъясняют риски заказчику.

Что же ждет вас в Флагмане, новом решении?

Элементарные области
В наших прежних решениях мы уже заботились о разработчиках, разбивая шаблоны комплексных на отдельные логические составляющие.
Теперь мы превратили такие составляющие в отдельные ЭЛЕМЕНТАРНЫЕ области, каждая из которых может просто заменяться на своего брата близнеца, подготовленного веб-мастером
И все это без кастомизации комплексного компонента. Подробности в документации

Для легкости в ориентировании мы подготовили "дорожную карту"
Вот пример такой карты



Если смотреть на пример дорожной карты, то у вас есть возможность заменить любой блок, НЕ ТРОГАЯ ШАБЛОН КОМПОНЕНТА И НЕ ПРИБЕГАЯ К КАСТОМИЗАЦИИ

Прологи и Эпилоги элементарных областей
Позаботились мы и о частных случаях и исключениях, бдагодаря которым опявились прологи и эпилоги.

Видео-кейс
Обязательно рекомендуем к просмотру любому веб-разработчику.

Теория



Практика



Новый взгляд на задачу
В начале статьи я рассказал о простейшей задаче, выполнение которой на большинстве решений уже может привести к снятию с поддержки целого комплексного компонента.
Посмотрим на эту задачу с методикой элементарных областей:

Пусть надпись надо вывести после цены.
Цена выводится в блоке 2.5 Price. Тип области будет catalog.element
таким образом
достаточно создать файл
/bxready2/elementars/catalog.element/element.price.epilog.php
и в нем создать вывод сообщения
После включения поддержки элементарных областей вы получите необходимый результат

Для чего данная технология  и почему она появилась
В первую очередь эту технологию мы разрабатывали для себя, чтобы получить экономичные инструменты сопровождения и внедрения.
Жалко кастомизировать целые комплексные компоненты по мелочам, но рады, если она поможет и другим.
Эта статья  - лишь краткая выжимка возможностей, которые дают элементарные области.
Технология эта пока экспериментальная и исп ользуется только на одном из участков, но если вам потребуется, напишите о том, в каком направлении требуется расширение

Подробнее с элементарными областями вы можете познакомиться в документации


P.S. Также мы не обойдем вниманием и решение BXReady: Интернет магазин. Эта технология уже запланирована на внедрение и на нем.. P.S.S. Это еще не все возможности решения BXReady: Флагман. Универсальный интернет-магазин