PagerのgetLinksが作るリンクURLはGET/POSTで送信するためのパラメータが埋め込まれる。 ディフォルトでは http://example.com/htdocs/?pageID=2 のように new HTML_QuickFormで指定したURLにページIDを付けている。 ページID以外に任意の情報をパラメータにしてURLに渡す方法がないかと調べていたら次のような方法があった。
例えば、URLに “opration=edit” を追加する。 マニュアルには書いてないが、次のようにすれば実現できる。
$params = array( ‘totalItems’ => $count_max,
‘perPage’ => 10,
‘delta’ => 5,
‘mode’ => ‘Sliding’,
‘httpMethod’ => ‘GET’,
‘importQuery’ => false,
‘extraVars’ => array(‘opration’ => ‘edit’),
‘spacesBeforeSeparator’ => 1,
‘spacesAfterSeparator’ => 1, );
$pager = & Pager::factory($params);
$links = $pager->getLinks();
これを実行すると$links のリンクは次のように作られる。
http://example.com/htdocs/?opration=edit&pageID=2