Twitter BootstrapをCakePHPで使う時、ヘルパーでjsとかを指定する。
TwitterBootstrap最高です。
CSSやら、まぁとにかくデザイン周りが大変苦手な自分のような人間にはまさに女神。
本家のTwitterは放置してる。すいません。
いや、しかしこれ大変便利です。
最近は、Initializr(http://www.initializr.com/)なんかも出て、もう一人開発が進みますね。
このブログ↓
http://torhamzedd.halteria.com/2012/05/cakephp20html515.html
を参考にせっせこやってたんですけど、cssやらjsのパス指定でミスが連発したので、そこはヘルパーさんを使った。
メモしておきます。
具体的には、
よく知られたhttps://github.com/slywalker/TwitterBootstrap
このプラグインを使います。
リネームした後で、app/pluginに置くのはいつもの通り。
AppController.phpの最後の部分, class AppController extends Controller{ } の部分を class AppController extends Controller { public $helpers = array( 'Session', 'Html' => array( 'className' => 'TwitterBootstrap.BootstrapHtml'), 'Form' => array( 'className' => 'TwitterBootstrap.BootstrapForm'), 'Paginator' => array( 'className' => 'TwitterBootstrap.BootstrapPaginator'), ); }
このように変えます。
後は、app/webroot
のcssやらjs何かのディレクトリに必要となるjsファイルとかcssファイルとかをぶち込んで。
指定のlayoutとかで
<?php echo $this->Html->css('hoge'); ?>
と書けばおk。
この場合だと、app/webroot/css/hoge.css を指定することになります。
普通に絶対パスとかで書くのか、ヘルパー使ったほうが良いのか、どっちが良いのかはわかりません。
個人的にはヘルパーさんが好きなので、こっちにしました。
cakePHPとTwitterBootstrapのフォームはちょっと違うらしく、それをなんとかするためにFormヘルパーは多用するらしいです。
じゃあ、はじめっからヘルパー使ったほうがわかりいいかなぁ。
と自分は思いました。
いつもお世話になっているブログさんです。どうもありがとう。