Entries


上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

-件のコメント

コメントの投稿

新規

※設定NGワードは『http』です

投稿した内容は管理者にだけ閲覧出来ます

-件のトラックバック

トラックバックURL
http://pugiemonn.blog6.fc2.com/tb.php/1377-6c8a2476

CakePHPの練習:paginationとbootstrapの衝突について


CakePHPのpaginationとCSSフレームワークのtwitter bootstrapの衝突について考えてみました。

このまえ作ったSpareChangeというサイトではCakePHPとbootstrapを使っていました。すると、CakePHPのデフォルトで吐くpaginationのHTMLとbootstrapが対応しているpaginationのHTMLが異なるという問題がありました。

こういうときに、CakePHPを編集するべきなのか、bootstrapを編集するべきか2択が発生して迷いました。

最初はCakePHPを編集した方が楽なのかと思いました。

CakePHPのビューでpaginationを吐かせるとします。

するとこんな感じのHTMLを吐きます。

bootstrap対応のHTMLとしては以下のようなHTMLを吐いて欲しいことになります。

ですのでCakePHPでやるとしたらビューでオプションを渡すかあるいは、ヘルパーを書き換えるのだと思いました。

参考になりそうなのはこの辺りでしょうか。

CakePHP paginatorのnumber()でspanタグをカレント以外から外す
http://web.mt-systems.jp/archives/217

ページ番号の区切りの「|」は、

$paginator->numbers(array('separator'=>false));
とすれば出力されなくなる。

Cake1.2でページング
http://d.hatena.ne.jp/s-yo-ko/20080227



ですのでいじるなら、
lib/Cake/View/Helper/PaginatorHelper.php
ここを編集します。
691行目あたり

695行目あたり

みたいにリンクを足してあげると良さそうです。そのほか726行目あたりとか730行目あたりを直したり、ビューからオプションを渡したりしないといけません。

例えばこんな感じでしょうか。

もっとあるのですけどこの辺でやめておきます。ほかにもやるならprevとかnextも編集しないといけないと思います。

結論としてはCakePHPをいじるよりbootstrapのCSSをいじることにしました。
CakePHPのpaginationがデフォルトで吐くHTMLに対応するCSSを書いてあげるほうが楽だと思いました。

でわでわ

0件のコメント

コメントの投稿

新規

※設定NGワードは『http』です

投稿した内容は管理者にだけ閲覧出来ます

0件のトラックバック

トラックバックURL
http://pugiemonn.blog6.fc2.com/tb.php/1377-6c8a2476

Appendix

プロフィール

川崎修

  • Author:川崎修
  • インターネット大好き!
    調布周辺で自宅警備してます



    メール:pugiemonn@gmail.com
    skype:pugiemonn
    twilog:Twilog
    mixi:mixi
    facebook:facebook
My Profile by iddy
FC2ブログ

カレンダー

08 | 2017/09 | 10
- - - - - 1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

最近の記事

Twitter

コミュニティ

ブログ内検索

ブロとも申請フォーム

この人とブロともになる

Adsense

月別アーカイブ

はてぶ数

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。