Webエンジニアの備忘録

およそ自己の作業メモとして残しております。

FuelPHPでJadeを使う

FuelPHPでJade Template Engineを検証した際にいくつか迷った点があったのでメモを残しておこうかと思います。

実装方法

  • composerにてJadePHPを取り込む
  • config/config.phpのalways_loadにparserを追加
  • config/parser.phpを追加
// JADE PHP ( https://github.com/everzet/jade.php )
// See notes in /parser/classes/view/jade.php
// ------------------------------------------------------------------------
'View_Jade' => array(
    'include' => ['autoload.php.dist'のパス],
    'auto_encode' => true,
    'cache_dir' => '[cacheディレクトリ]',
),
  • View_Jadeクラスを読み込む(controller下)
public function action_index()
{
    return Response::forge(View_Jade::forge('template'));
}
  •  上記の場合、view/template.jadeファイルを呼び出します

簡潔にはこれだけの手順になります。

以下が今回の留意点です。

Jadeについて

JadeはもともとJavaScriptでの利用のため開発されたTemplate Engineのようで、今回利用するのはJadePHPになります。FuelPHPのParserクラスでも下記のページでJadeの名前も紹介されています。

はじめに - Parser パッケージ - FuelPHP ドキュメント 

不親切なのですが、コードをみるとuseされているライブラリからeverzet/jade.phpを利用しているのがわかります。

https://github.com/fuel/parser/blob/1.7/master/classes/view/jade.php

https://github.com/everzet/jade.php

Composerでの取り込み

Jade.phpはリリースタグが切られていないので、Composerで利用の際は自身のGithubなどにフォークして、そちらを取り込むのが作法のようです。