PEAR::Pagerでページ送りを表示する

pager(ページャー)機能を利用する際のメモ。※Smartyを利用した場合。

複数の画像を10枚ずつ表示させる場合。(全ての画像の大きさは統一)

・PHPファイル

//画像名を配列に代入
$img = array("img1.jpg","img1.jpg","img1.jpg","img1.jpg","img1.jpg");
$params=array(
"perPage"=>10,
"itemData"=>$img,
"prevImg"=>"前のページ",
"nextImg"=>"次のページ"
);
$o_page=Pager::factory($params);
foreach($o_page->getPageData() as $listData){
$listDataList[]=$listData;
}
$currentPageID = $o_page->getCurrentPageID();//現在のページ番号
//表示するデータをSmartyに渡す
$smarty->assign("list",$listDataList);
$smarty->assign("currentPageID",$currentPageID);
//ナビゲーションの作成
$navi=$o_page->getLinks();
$smarty->assign("pageNavi",$navi['all']);

・tplファイル

<p class="pagenavi">{$pageNavi}</p>
<hr />
{foreach from=$list item="list" name="listLoop"}
<img src="/images/{$list}" alt="" width="★★" height="★★" />
{/foreach}
<hr />
<p class="pagenavi">{$pageNavi}</p>
</pre>

Leave a Response