Extras-файлы в Albireo CMS
Если стоит задача организовать вывод tpl-файла, но только в рамках текущей страницы, то можно использовать extras-файлы. Эти файлы всегда располагаются в каталоге шаблона extras
.
Для выполнения extras-файла используется одноимённая функция extras()
. Например:
<?= extras('info1-header.php') ?>
Внутри extras-файла автоматически будут доступны все поля страницы в виде таких-же php-переменных, как и в tpl-файлах.
Например файл info1-header.php
выводит информацию о странице примерно в таком виде:
{@isset $title} <h1>{{ $title }}</h1> {@endisset} {@empty! $category} <span class="mar10-r bi-bookmark" title="{@lang Categories}">{{ categoryLinks($category) }}</span> {@endempty} и т.п.
То есть extras-файл использует стандартный TPL-шаблонизатор, только в качестве данных использует данные текущей страницы.
Такой подход позволяет упростить html-вёрстку различных блоков, особенно тех, где есть особые условия вывода.
Если вы знакомы с MaxSite CMS, то extras-файлы по своему назначению близки к type_foreach-файлам, с той разницей, что extras-файлы совершенно произвольны и никак на привязаны к выводу шаблона.