pagingプラグイン導入
2005/02/14 Mon 23:52
長嶋享さんのpagingプラグインを試験導入、ひとまずページの一番下にナビゲーションバーを付けました。url()の返値がincluded:で始まるというXREAの問題を解決するため、url()が使われているすべての行の次の行に
$url =~ s/^included:/http:/;
を追加して対応、ひとまず問題なく動作しているようです。これに近い機能を実現するプラグインとしては、同じく長嶋さんのpaginate_simpleプラグインや、加須徹/castorさんのyoshitakaプラグイン、Jason Clarkさんのmoreentriesプラグインなどがあります。このうちmoreentriesは最初に試してみたんですが、ヘッダを生成できないというサーバエラーが出て、動作しませんでした。pagingはすんなり設置でき、かつ使いやすいので、しばらく使ってみたいと思います。
エントリーの個別ページでのナビゲーション用にpaginate_simpleも導入していく方向で。
追記:問題ありました。おそらくmod_rewriteなどを使ってURIからblosxom.cgiを消してる関係だと思いますが、カテゴリ毎のページでのナビゲーションリンクURIがおかしくなってます。でも今日は眠いのでまたいずれ。
追記(2/15 23:31):カテゴリ毎のページで出ていたこのサイト固有の不具合を修正しました。URIとpath_infoで二重にカテゴリ名が指定されてしまうことが問題だったので、
- my $url = url(-path_info => 1); + #my $url = url(-path_info => 1); + my $url = url(-path_info => 0);
または
- my $url = url(-path_info => 1, -query => 1); + #my $url = url(-path_info => 1, -query => 1); + my $url = url(-path_info => 0, -query => 1);
のように、path_infoを出力している部分を無効にしました。いまのところ問題なく動いているようです。