Pear::pager と TwitterBootstrap をマッシュアップしてみた
前回に引き続き、WEBアプリをカスタマイズしてみました。
DB使って商品登録をしてると、1ページで表示すると非常に見づらくなることがあります。そんなとき「ページャー」があるとページごとに商品を分けてくれて見やすくなります。ですが、商品が多すぎるとページ数が多くなってきてページャー自体が見づらくなります。この辺りはユーザビリティの域になると思います。
そのユーザビリティを上げてくれるのがTwitterBootstrapです。
これまでに何度かバージョンアップしていて、2013年11月現在でバージョンは3になっています。3では「モバイルファースト」の概念を基に作られているようです。
このTwitterBootstrapにPaginationというコンポーネント(パーツみたいなもの)があり、これを使うとページャーのユーザビリティが非常に高くなります。一度はどこかのサイトで見たことがあると思います。
それで、ページャーですが、今回のWEBアプリでは枯れたライブラリであるPEARのPagerを使ってページ処理をしているので、それに合わせてカスタマイズする形になります。
リンクの形は以下のような形にします。
<div class="pagination"> <ul> <a href="#">aaa</a> </ul> </div>
ですが、これだけだとPEAR::pagerが出力する<a>タグに<li>タグがついてなくて、正しく表示されません。
正しく表示させるためにはPEAR::pagerを少しカスタマイズする必要があります。
PEAR::pagerのCommon.phpというファイルを開いて、<a>タグのところにハードコーディングします。
※「<a」でコード検索すると見つかります。
<li><a href="%s"%s%s%s%s title="%s">%s</a></li>
これで一旦表示ができるようになりましたが、PEAR::pagerのデフォルトでアクティブなページはリンクされないので<li>タグが反映されません。
そのため、pagerのオプション配列に以下の記載が必要になります。
$options = array( 'curPageSpanPre' => '<li class="active"><a>', 'curPageSpanPost' => '</a></li>' );
これでTwitterBootstrapのPaginationが表示されるようになりました。
Book Stock Manager
http://lib.hakomori.net/
参照:
http://d.hatena.ne.jp/pospome/20130322/1363915348
Google AD
関連記事
-
xoops cubeを入れてみた
かなり枯れたパッケージだが、xoops cubeを調べたのでエントリー。 Xoops と言われ
-
お名前ドットコムとDNSサーバ構築
以前話題にしたサーバ構築の件、DNSサーバとmailサーバを立てる事がなくなった。DNSサーバはお名
-
zenphotoを考え始める
googleのwebアルバムを使っていて、こりゃ便利じゃわい、と思ってたけど、結局完全に無料じゃない
-
wordpress plugin change the taxonomy when you suggest the time
1. at first, download Post Expirator.2.change code
-
【どうしてこうなった!?】このブログの直帰率が1%を切りました【自分史上初】
以前のエントリーで、このブログの直帰率が80%から20%に激減したことを報告しました。
-
vertical-alignで画像とテキストの位置を垂直方向で揃える
これも自分のリマインダー用としてエントリー。 画像とテキストが同じ行に並んでいて、垂直
-
biosが起動しない。
おとといくらいから、うちのPCが起動しない。OSが起動しないだけじゃなくてBiosが起動しない。ファ
-
ec-cubeで欲しい機能
仕事で、ec-cubeを触っている。どこの企業でも同じだと思うが、ec-cubeを使っているとカスタ