Albireo CMS 2025.01.17

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-файлы совершенно произвольны и никак на привязаны к выводу шаблона.