Внимание! Пост предназначен для тех, кто делает для себя дочерний шаблон и хочет (а главное может) внести правки в шаблон виджета Элементы шаблона.
Для тех, кому хватает виджета html блок, эта разработка не нужна.
С появлением шаблона modern в двойке появился интересный виджет «Элементы шаблона». Он предназначен для вывода кусочка кода из файла templates\modern_или_дочерний\widgets\template\template.tpl.php
Эти кусочки строго указаны в настройках виджета и ограничены 7 блоками: Тело страницы, Глубиномер, Сообщения сессии, Блок копирайта и отладки, Логотип, Сообщение об отключении сайта, Выбор языка.
Но сделав свой дочерний шаблон по инструкции, хочется большего. Начинаешь править scss файлы стилей, делать новые обертки виджетов, и хочется с помощью виджета Элементы шаблона выводить свои блоки.
Для решения этого вопроса предназначен небольшой компонент Ztemplate После установки компонента можно будет управлять доступными вариантами опции «Что выводить?» виджета «Элементы шаблона».
План действий
1. Создайте свой дочерний шаблон. Выберите его в настройках сайта
2. Установите компонент Ztemplate
3. Откройте настройки компонента и скройте/добавьте опции
4. Скопируйте папку widgets/template из modern шаблона в свой дочерний
5. Добавьте свой блок, для текущего примера перед последним
<?php } ?>
добавим
<?php } elseif($widget->options['type'] === 'contacts') { ?> Звоните 2-22-222
Получится примерно так
6. Выведем новый блок в сетке виджетов. Разместите виджет «Элементы шаблона» в нужном месте, в опции «Что выводить» выберите добавленный вариант
Готово
Таким образом можно добавить множество своих блоков.
Ограничения
Работает на 2.14.2 и свежее. Работает только на дочерних шаблонах.
Компонент предоставляется как есть. Поломаться ничего не должно (если блока не будет, просто ничего не выведется), но мало ли. Используйте на свой страх и риск.
Если что-то пошло не так, просто удалите компонент (в том числе папку system/controllers/ztemplate). Выведенные ранее блоки продолжат выводиться, пока вы не уберете их из файла шаблона.