И тем не менее, это не решает проблему с делегированием шаблона. Все равно там, где хуков нет, придется делегировать его полностью. Нет такой гибкости, как с наследованием классов.
Было бы шикарно, если бы каждый шаблон мог делегироваться, сохраняя свой parent, и при этом добавляя в нужные места нужные дополнения.
Хуки в таком случае вообще можно добавлять автоматически, некоторые стандартные, которые должны быть всегда — типа layout_start \ end, для каждого блока в html — block_{block_id}_start \ end, и т.п.
Это я к тому, что подобная система блоков ничем не отличается по сути от хуков. И если блок не прописан в шаблоне, его все равно не поменять иначе, кроме как полным делегированием (или, как вы и предложили, через js).
Просто интересовался этим вопросом, т.к. в этом топике данный аспект не освещался. Потратил некоторое время на поиски, оказалось очень просто. Вот и написал в комменты к этому гайду)
Было бы шикарно, если бы каждый шаблон мог делегироваться, сохраняя свой parent, и при этом добавляя в нужные места нужные дополнения.
Хуки в таком случае вообще можно добавлять автоматически, некоторые стандартные, которые должны быть всегда — типа layout_start \ end, для каждого блока в html — block_{block_id}_start \ end, и т.п.
Это я к тому, что подобная система блоков ничем не отличается по сути от хуков. И если блок не прописан в шаблоне, его все равно не поменять иначе, кроме как полным делегированием (или, как вы и предложили, через js).