Компоненты 2.0

Комплексные компоненты, маленький баг [bitrix api]

Если кто использует комплексные компоненты в битриксе то возможно сталкивался с тем что метод CComponentEngine::ParseComponentPath который делает практически всю работу по разбору и подмену для ЧПУ возвращает false.

Это происходит потому что может стоять лишний слеш, приведу правильный и не правильный массив описаний URL из документации.

Правильно :

$arUrlTemplates = array("list" => "index.php");

Не правильно:

$arUrlTemplates = array("list" => "/index.php");

Мелочь, а может отнять кучу времени. В доках оставил коммент, так что
надеюсь что вспоткунтся меньше людей.

Компоненты 2.0::Кеширование в компоненте

Хотел написать про кэширование в компонентах по просьбам читателей, но нашел вполне понятное описание в официальной документации . Если честно я его раньше почему-то не видел и не читал, все пришло с опытом.

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