Свой шаблон на основе Modern: наследование вместо копирования
Сначала я хотел скопировать шаблон Modern целиком и поменять пару файлов. Потом понял, что при каждом обновлении CMS придётся всё сравнивать вручную, и нашёл способ лучше. В InstantCMS 2 есть наследование шаблонов: в
manifest.php
return [ 'inherit' => ['modern', 'admincoreui'], 'title' => 'Мой шаблон', // ... ];
Дальше в папке своего шаблона лежат только изменённые файлы. Если файла нет — CMS возьмёт его у родителя.
Что удобно переопределять
- — макет страницы целиком.
- main.tpl.php
- и
- content/<тип>_list.tpl.php
— список и запись конкретного типа контента.- content/<тип>_item.tpl.php
- — свои шаблоны для виджета «Список контента».
Так обновления ядра и родительского шаблона подтягиваются автоматически, а ваши правки остаются на месте.
Пригодилось? Можно сказать спасибо
Дополнения бесплатные. Если какое-то сэкономило вам время — можно закинуть на кофе. Это необязательно, но очень приятно и мотивирует делать дальше.
100 ₽ · 300 ₽ · 500 ₽
