К содержимому

Свой шаблон на основе Modern: наследование вместо копирования

Сначала я хотел скопировать шаблон Modern целиком и поменять пару файлов. Потом понял, что при каждом обновлении CMS придётся всё сравнивать вручную, и нашёл способ лучше. В InstantCMS 2 есть наследование шаблонов: в

  1. manifest.php
своего шаблона достаточно указать родителя.

  1. return [
  2. 'inherit' => ['modern', 'admincoreui'],
  3. 'title' => 'Мой шаблон',
  4. // ...
  5. ];

Дальше в папке своего шаблона лежат только изменённые файлы. Если файла нет — CMS возьмёт его у родителя.

Что удобно переопределять

    1. main.tpl.php
    — макет страницы целиком.
    1. content/<тип>_list.tpl.php
    и
    1. content/<тип>_item.tpl.php
    — список и запись конкретного типа контента.
    1. controllers/content/widgets/list/*.tpl.php
    — свои шаблоны для виджета «Список контента».

Так обновления ядра и родительского шаблона подтягиваются автоматически, а ваши правки остаются на месте.

Пригодилось? Можно сказать спасибо

Дополнения бесплатные. Если какое-то сэкономило вам время — можно закинуть на кофе. Это необязательно, но очень приятно и мотивирует делать дальше.

100 ₽ · 300 ₽ · 500 ₽
—
25
Нет комментариев. Ваш будет первым!