Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!
Я смотрел эту ссылку, но ничего у меня не заработало. Как система узнает из какого пространства имен брать компонент, а если есть несколько таких пространств, то кому будет приоритет ? Где задается что в текущий момент используется работа компонента из определенного пространства имен ?
например в /catalog/index.php есть строка
APPLICATION->IncludeComponent(
"bitrix:catalog"
Создаёшь по мануалу новое пространство имён и пишешь теперь в /catalog/index.php
APPLICATION->IncludeComponent(
"your_new_namespace:catalog"
Ваш комментарий к ответу:
Конфиденциальность: Ваш электронный адрес будет использоваться только для отправки уведомлений.
Спасибо ответ и за ссылку, но там опят речь идет про шаблоны, т.е. визуальное представление данных. Наверно я не понимаю чего, помогите пжста понять. К примеру есть стандартные компоненты, которые лежат относительно корня сайта в /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, а изменилась серверная часть. Надеюсь смог объяснить чего хочу).
APPLICATION->IncludeComponent(
"bitrix:catalog"
Создаёшь по мануалу новое пространство имён и пишешь теперь в /catalog/index.php
APPLICATION->IncludeComponent(
"your_new_namespace:catalog"