Спасибо ответ и за ссылку, но там опят речь идет про шаблоны, т.е. визуальное представление данных.
Наверно я не понимаю чего, помогите пжста понять.
К примеру есть стандартные компоненты, которые лежат относительно корня сайта в /bitrix/components в пространстве имен bitrix
(/bitrix/components/bitrix ). Меня интересует компонент catalog.section и его логика работы, которая описана в component.php
Я создаю новое пространство имен test, т.е. получаем /bitrix/components/test. Копирую туда интересующий компонент:
/bitrix/components/test/catalog.section и исправляю его component.php. Таким образом я перекрыл логику работы штатного компонента в новом пространстве имен, и хочу чтобы при работе этого компонента использовалась логика catalog.section из пространства имен test.
Теперь у меня есть шаблон на сайте /bitrix/templates/store_minimal_gray в котором есть директория components
( /bitrix/templates/store_minimal_gray/components). Там снова указывается пространство имен bitrix и шаблоны для компонент из этого пространства. Я создаю директорию test (мое пространство имен) и туда копирую целиком папку catalog из /bitrix/templates/store_minimal_gray/components/bitrix, т.е. получаем /bitrix/templates/store_minimal_gray/components/test/catalog. Вроде как задали представление для всех компонент из этого пространства имен.
Вопрос - как битрикс поймет что я перекрыл штатный компонент ? Т.е. если говорить в терминах ООП, то подменил реализацию интерфейса, и мне нужно где-то указать, какую реализацию использовать, делать это в глобальных настройках приложения или через фабрику - мне без разницы, только я не понимаю где это задается в битриксе. Мне нужно чтобы для клиента все осталось как и прежде (он с интерфейсом работает компонента) - работает все с тем же компонентом catalog.section, а изменилась серверная часть. Надеюсь смог объяснить чего хочу).