0 フォロワー

テンプレートエンジンの使用

デフォルトでは、YiiはPHPをテンプレート言語として使用しますが、拡張機能として利用可能なTwigSmartyなど、他のレンダリングエンジンをサポートするようにYiiを設定できます。

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',
                    // Array of twig options:
                    'options' => [
                        'auto_reload' => true,
                    ],
                    'globals' => ['html' => '\yii\helpers\Html'],
                    'uses' => ['yii\bootstrap'],
                ],
                // ...
            ],
        ],
    ],
]

上記のコードでは、SmartyとTwigの両方がビューファイルで使用できるよう設定されています。しかし、これらの拡張機能をプロジェクトに取り込むには、composer.jsonファイルも修正してそれらを含める必要があります。

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

そのコードは、composer.jsonrequireセクションに追加されます。変更を加えてファイルを保存した後、コマンドラインでcomposer update --prefer-distを実行することで、拡張機能をインストールできます。

具体的なテンプレートエンジンの使用方法の詳細については、そのドキュメントを参照してください。

タイプミスを見つけた場合、またはこのページの改善が必要だと考える場合は?
Githubで編集する !