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

 参考

広告

関連記事

iPhoneアプリ開発 芳名帳アプリ作成(4) -設定準備-

* 今までの流れ - -[http://pplace.jp/2013/06/1531/:title=

記事を読む

iPhoneアプリ開発 芳名帳アプリ作成(1) -最初の一歩-

* 作るアプリ 結婚式や2次会で「自分の名前を書く」芳名帳 これをアプリで作ってみます。

記事を読む

no image

PhoneGapを触ってみた(2) -実機でテスト編-

* 今までの流れ - * 自分の端末で動かしてみよう 今回は、PhoneGapで作成したアプリを実

記事を読む

スクリーンショット 2012-10-20 14.26.24

iPhoneアプリ開発 −UITabControllerの利用−

* やりたいこと 上にあるように下部にあるタブをタッチしたら別のページを呼び出す。 * 

記事を読む

no image

jQuery Mobileでdata-role=headerを使うときの注意点 -勝手にタイトルが変更される件-

* 現象 +headタグでtitleタグで文字列(A)を記述している +data-role=he

記事を読む

no image

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

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

記事を読む

no image

CakePHPのモデルのキャッシュではまった -新しく追加したカラムに値が入らない-

タイトルのとおり、ちょこっとCakePHPではまったのでメモ。 * 作業内容 -MySQLで、ある

記事を読む

no image

order byでハマったこと -order by、group byの処理順序-

CakePHPでorder byとgroup byを使っていてはまったことについてのメモ。 * 

記事を読む

Jenkins + iPhoneアプリ(2) -ローカルリポジトリにあるデータからipaファイル生成-

* これまで - * 最終目標 -(開発者)git(リモートリポジトリ)にソースをコミット

記事を読む

no image

TestLink1.91のバグの修正方法

どうやらTestLink1.91にはバグがあるようなので、修正方法を以下に記述。 Test

記事を読む

広告

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 ↑