こんにちは、Webプログラマの篠田です。
現在、社内で次期プロジェクトで利用するLaravelの勉強会を実施しています。
これまでにも、PHPフレームワークを利用してきましたがLaravel5.6は新規での導入ということで、Laravel的お作法を確認しています。
今回は、Laravelでこれまでのノウハウを活かすため、テンプレートエンジンTwigを利用できる方法についてまとめていきます。
BladeがあるけどTwig
Laravelには、もともとBlade(ブレード)というテンプレートエンジンが含まれています。
ですが、今回Bladeを使わずにTwigを採用しようとしたのは、既存サイトの多くでTwigを採用しているため、学習コストが多少なりともかかってしまうためです。
もう1つ大きかったのは、普段システムを触らないフロント周りのスタッフがTwigを使えるようになってきたのが大きいです。
やはり、新しいことを学習することは楽しいのですが、組織としてみると保守コストの増大にもなりますので、これまでのノウハウを活かす方向で選んだ次第です。
Composerでインストール
Twigは、Composerで簡単にインストールができるので非常に楽です。
Laravelをインストールしたディレクトリ内で下記のコマンドを実行します。
1 |
$ composer require rcrowe/twigbridge |
Laravelのconfigを編集する
Laravel側で、Twigを認識させる必要があるので、「config」ディレクトリ内にある「app.php」ファイルを編集します。
まずは、TwigをLaravelに認識させるための設定として「providers」に追加します。
1 2 3 4 |
'providers' => [ ・・・・ TwigBridge\ServiceProvider::class, ], |
同じくapp.phpファイル内にある「aliases」に「Twig」と簡単にクラスを呼び出せる設定をします。
1 2 3 4 |
'aliases' => [ ・・・・ 'Twig' => TwigBridge\Facade\Twig::class, ], |
仕上げは、artisanコマンド
「app.php」ファイルの編集が終われば、最後にtwigの設定ファイルを追加するために、artisanコマンドを実行します。
Laravelがインストールされているディレクトリ内で下記のコマンドを実行します。
1 |
$ php artisan vendor:publish --provider="TwigBridge\ServiceProvider" |
これで、Laravel内でTwigをテンプレートエンジンとして利用が可能になります。
「resouse/view」ディレクトリ内に、拡張子「.twig」ファイルを保存するだけです。
Laravelだからといって、Twigの使い方が変わる部分はありませんので、Twigのお作法に則って記述していけば大丈夫です。
まとめ
Laravelでも、Twigが利用できるのでTwigを活用されていた環境でも導入コストは非常に低く抑えることができます。
今後はLaravel + Twigで開発をしていきたいと思います!
現場の業務フローに寄り添ったWebシステムをお求めなら、私たちALAKIにご相談ください。
ALAKIは経営者様が感じている問題点と、実際にWebシステムを利用される現場スタッフ様が直面している課題を、弊社システムエンジニアが丁寧に聞き取り、お客様と共にシステムを作り上げていきます。
業務改善が実現できるWebシステムをお求めの方は、是非ALAKIにご相談ください。