CakePHP2系にTwigを導入

公開日: : CakePHP, CakePHP2, IT, Twig, テンプレートエンジン


CakePHP2系でも慣れているSmartyを使おうと思ったものの、良いプラグインが見つからず断念。
そこで、Symfonyで使われているテンプレートエンジン「Twig」を使ってみることにしました。
導入までの覚書。

 ダウンロードと設置

 プラグインのダウンロード

まず、プラグインを以下からダウンロード

解凍した状態(TwigViewフォルダ配下)は以下の様な感じです。

※readme.mdが説明書になります(全て英語ですが)。

 Twigのダウンロード

プラグインがあるだけでは、動かないので「Twig」本体もダウンロード。

 CakePHPに設置

必要な物だけCakePHPのPlugin配下に置きます。

※「Twig」本体は、解凍したプラグインのVendorフォルダ配下に置きます。

 初期設定とサンプル作成

 コントローラー

利用するコントローラーに以下を追記します。

public $view = 'TwigView.Twig';

※全体で反映させるならば、AppControllerに記述するだけでOKです。

 bootstrap.php

/app/Config/bootstrap.phpに以下を追記します。

CakePlugin::load('TwigView');

 ビュー

ビューの拡張子は、「tpl」にします。
記述方法は、Smartyとちょっと違います。

 導入前

例1)

<?php echo $title ?>

例2)

<?php echo $this->Html->charset(); ?>
<?php echo $this->Html->css('ファイル名'); ?>
導入後

例1)

{{title}}

例2)

{{html.charset()}}
{{html.css('ファイル名')}}

やはり導入したほうがすっきりして良い感じですね。

 注意点

Elementの呼び出し方が説明(readme.md)に書いているとおりにやっても出来ません。

どうやら以下のようにやるようになっている模様。

{% include 'Elements/ファイル名.tpl' %}

element function doesn&#39;t work · Issue #8 · m3nt0r/cakephp-twig-view · GitHub

 参考

広告

関連記事

Jenkins + DeployGate(1) -DeployGateでAndroidアプリ開発-

TestFlight for Androidが発表されて1ヶ月ぐらいたちますが、音沙汰がありません。

記事を読む

Jenkins + DeployGate(2) -DeployGateにアプリをアップ!-

DeployGateを使ってますか? 継続的にDeployってますか? TestFlightの

記事を読む

no image

iPhoneアプリを開発してての疑問 -教えてエライ人!-

MacでiPhoneアプリを開発してて疑問に思ったのの解決してないことを列挙。 知識不足をさらけ出し

記事を読む

no image

iPhoneアプリ開発 −遷移先のViewControllerに値を引き継ぎたい−

例えば、トップページに複数個のボタンがあって、「A」と「B」というボタンを押下した際に、同じView

記事を読む

no image

Twitterでサービスにログイン -ソーシャルログイン-

* やりたいこと -自身のWebサービスにTwitterIDでログイン(ソーシャルログイン)したい。

記事を読む

no image

ターミナルでgitのコマンドを補完したりブランチ名を表示する – macでgitを便利に使うために –

* やりたいこと macのターミナルでgitをいじっていると -今のブランチってなんだっけ? -g

記事を読む

no image

Jenkins+Capistranoを設定した時にしたこと -「ポート変更」「公開鍵認証」対応-

* 前段階 上記にあるように、Jenkins+Capistranoの設定をしています。 ただし、設

記事を読む

no image

iPhoneアプリ開発 -利用するべきサービス-

iPhone(iOS)アプリ開発において使っているサービスを列挙。 この手のサービスがないと、開発中

記事を読む

iPhoneアプリ開発 芳名帳アプリ作成(2) -記帳画面作成-

* 今までの流れ - * 画面構成 今回の芳名帳アプリは以下の画面で構成しています。 -

記事を読む

Jenkins + iPhoneアプリ(3) -ipaファイルをTestFlightにアップロード-

* これまで - -[http://pplace.jp/2013/01/1192/:title=

記事を読む

広告

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

広告

no image
[感想] Effective Objective-C 2.0 ☆☆☆☆★(4.5)

* 構成 - 第1章 Objective-Cに慣れる -

no image
[感想] iOSアプリテスト自動化入門 ☆☆☆(3.0)

* 構成 - Chapter 1 テスト自動化への取り組み

DeployGateを試してみた(iOS編) -DeployGateがiOSに対応-

今までのDeployGate - -[http://pplace.

iPhone/iPadアプリを開発するためにやったこと

今までに、iPhoneを3本ほどリリース((リリースしたアプリは全て1

no image
ターミナルでgitのコマンドを補完したりブランチ名を表示する – macでgitを便利に使うために –

* やりたいこと macのターミナルでgitをいじっていると -今の

→もっと見る

PAGE TOP ↑