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
関連記事
-
-
AmazonEC2にcakephp2入れたときにエラーが出た件
たぶんEC2にはcakephpをこれからも入れるだろうから自分用にエントリー。 Amazon
-
-
zenphotoを入れてみる
これまでの写真データ管理にはGoogleのWEBアルバムを使ってきたが、無料で使えるのは1GBまでだ
-
-
wordpressからbloggerに引越し
lolipopで使っているロリポプランは、DBが一つしか使用できない。もうちょっと有効に使えないかと
-
-
JQueryのsliderでpagination機能を作ってみた
複数ページが存在するWEBサイトによく使われている機能として「ページネーション」があります。
-
-
WEBディレクター募集します
仕事でWEBディレクターが必要になりました。HTML/CSSコーディング、ディレクション経験あります
-
-
postgresqlデータベースにインデックスを作成する方法
ビットコインが取引停止になったり、LINEがスタンプを自由に作れるようにしたり、何かとにぎや
-
-
アマゾンのクラウド(AWS)を使ってみる その2
前回、アマゾンのクラウド(AWS)を使ってみる で何も無い所からEC2を立ち上げましたが、そのあ
-
-
CakePHP1.3でブラウザを閉じてもセッションが切れないようにする方法
ちょっと体調を崩してしまってましたが、なんとか回復してきました。(辛かった・・・) 本当に
-
-
PVが3000を超えたので3か月やったこととを公表します
ウクライナ情勢が緊迫している昨今、皆様お元気でしょうか? 自分のブログには大きな変化がありました。
-
-
ロリポップからさくらインターネットにレンタルサーバを変更しました
前のエントリーで少し書きましたが、ロリポップを解約しました。 契約開始から3年と半年、本当