Использование шаблонизаторов в Yii 2
Использование шаблонизаторов в Yii 2


Использование шаблонизаторов

По умолчанию, Yii использует PHP в шаблонах, но вы можете настроить Yii на поддержку других шаблонизаторов, таких как Twig или Smarty, которые доступны в расширениях.

Компонент view, отвественный за генерацию видов. Вы можете добавить шаблонизатор с помощью перенастройки поведения компонента:

[
    'components' => [
        'view' => [
            'class' => 'yii\web\View',
            'renderers' => [
                'tpl' => [
                    'class' => 'yii\smarty\ViewRenderer',
                    //'cachePath' => '@runtime/Smarty/cache',
                ],
                'twig' => [
                    'class' => 'yii\twig\ViewRenderer',
                    'cachePath' => '@runtime/Twig/cache',
                    // Массив опций twig:
                    'options' => [
                        'auto_reload' => true,
                    ],
                    'globals' => ['html' => '\yii\helpers\Html'],
                    'uses' => ['yii\bootstrap'],
                ],
                // ...
            ],
        ],
    ],
]

Добавление шаблонизаторов в код Yii.

В коде, показанном выше, оба шаблонизатора Smarty и Twig настроены, чтобы использоваться в файле вида. Но чтобы добавить эти расширения в ваш проект, вам необходимо также изменить ваш composer.json файл. Добавить в него:

"yiisoft/yii2-smarty": "~2.0.0",
"yiisoft/yii2-twig": "~2.0.0",

Это код вставляется в секцию require файла composer.json. После изменения и сохранения этого файла, вы можете установить расширение, запустив composer update --prefer-dist в командной строке.

Информация по использованию шаблонизаторов.

Для получения подробной информации об использовании конкретного шаблонизатора обратитесь в их документации:

Заберите ссылку на статью к себе, чтобы потом легко её найти!
Раз уж досюда дочитали, то может может есть желание рассказать об этом месте своим друзьям, знакомым и просто мимо проходящим?
Не надо себя сдерживать! ;)

Старт! Горячий старт на просторы интернета
Старт! Горячий старт на просторы интернета
Старт! Меню