Сейчас реализована возможность наследоваться от других компонентов следующим образом:
CBitrixComponent::includeComponentClass("bitrix:catalog.viewed.products");
class CSaleBestsellersComponent extends CCatalogViewedProductsComponent{
...
}
|
Но так происходит наследование только class.php. т.е. если я хочу только чуть-чуть изменить логику обхода элементов полученных в getlist, я все равно должен скопировать и шаблон, и описание, и параметры, и языковые файлы.
Как не странно, но указание напрямую адреса наследуемого файла параметров приводит к ошибке в публичке (повторные ajax запросы и зависание в визуальном редакторе при попытке отредактировать параметры компонента).
include($_SERVER['DOCUMENT_ROOT'].'/bitrix/components..../.parameters.php') ; |
Хотелось бы увидеть что-то вроде:
CBitrixComponen::includeParametrsByParentName("bitrix:catalog.viewed.products");
CBitrixComponen::includeTenplateByParentName("bitrix:catalog.viewed.products",'.default');
|
поскольку файл параметров да и шаблон, могут быть переопределены в шаблонах сайта, то стоит в таких функциях добавить второй параметр шаблон сайта.