CakePHPでスキン型アプリを作るには

「できるのかなあ」とtwitterで呟いてみたら、cakephperさんからヒントいただきました。。ありがとうございます!


要になるのは、テーマ機能*1
あと、セッション機能とキャッシュ辺りが絡み合ってきそうです。特にキャッシュは懸念・・・


使い方。
CookBookには載っていますが、
こちらの方が詳しく、実用的手法も説明してあります!
http://www.pseudocoder.com/archives/2008/01/07/theming-with-cakephp/

・・・英語ですが;


上の記事と、lib/view/view.phpとtheme.php斜め読みした感触。


「ひとまず、できる事はできる。まず間違いなく」
「ただし」

  • テンプレーターさんに怒られそう

やはりcakephperさんからの情報ですが、ctpあるいはテンプレートファイルを、変換なしで読み込んでセットしてるので、このままだと

<div id="MyName"><?php echo $name ?></div> 

とか書いてもらうことになります。
せめて、

<div id="MyName">{$name}</div> 

レベルですよね・・・・・

この辺は、スキンのアップの仕方でカバーする*2

  • 負荷大丈夫?
    • キャッシュ破棄タイミング注意
    • ファンクションキャッシュとViewキャッシュはともかく、ブラウザキャッシュ大丈夫?

・・・・・考え中。。


candycaneが、テーマ機能使っているそうなので、ソース探してみてみよう・・・
CakePHP版Redmine「CandyCane」も多言語対応&テーマ対応です - yandod's blog
http://my.candycane.jp/


ひとまず、閃光のようなすごい光が見えました(T-T)

*1:手持ちの入門書に載っていなかったので機能自体を知らなかった・・・

*2:ドラフト、というかかなりイメージ的案;