Weblog

flavour無しpermalink

Posted at 2004-08-01T12:22:00+09:00 in Blosxom

本家MLの方で、flavour無しpermalinkを実現するパッチが投稿されたんですが、これはちょっと微妙かなと。まぁ確かに実現できているといえば実現できているのですが、うまいこと$default_flavourを利用してくれはしないような感じなので、別の方法をとにかく考えてみようかと。前に考えた時はうまく思いつかなかったんですが、今日は数分で思いついたりした。

結局のところ$path_infoという変数に入っている値が、エントリ・ファイルのパスとflavourを示すことになっているようなので、これを適切にセットしてやればうまくいくわけです。

なので、改造すべき部分は、PATH_INFO環境変数から$path_infoを生成する一連の処理のうちの一部分(112行目から118行目あたり)。

if ( $path_info[$#path_info] =~ /(.+)\.(.+)$/ ) {
  $flavour = $2;
  $1 ne 'index' and $path_info .= "/$1.$2";
  pop @path_info;
} elsif (!-d "$datadir$path_info") {
  $path_info .= ".$default_flavour";
  $flavour = param('flav') || $default_flavour;
} else {
  $flavour = param('flav') || $default_flavour;
}

以上のように、elsifのブロックを追加するだけでうまくいきました。!-dでディレクトリの存在チェックをしているのは、カテゴリ単位での閲覧の場合かどうかを判別するためです。

というわけでflavour無しpermalinkが機能するようになりました。ビジターへの利便性は皆無に等しいけど、自己満足度は高い。Cool URI!

ちょっとチェックしきれていないので、思ってもみない不具合があるかもしれない。てか、MLに投稿しようかと思ったけど、英語書くのメンドイよ・・・。

追記@2004/08/04

MLに投稿したところ、blosxomの謎機能である「カテゴリ名の先頭数文字でも閲覧できる機能(See Also: blosxomのURL)」が無効になるというツッコミを貰った。確かに。同時に「blosxom.cgiを改造するではなく、pluginでいけるのでは?」というツッコミも。確かに。

Recent entries from same category

同じカテゴリに分類された最近10件のエントリです。

  1. 不明なflavour回避パッチの問題点
  2. 使用しているプラグイン
  3. はてなブックマークでつけられたコメントをblosxomにインクルード
  4. blosxomサイトの日本語訳
  5. interpolate_fancyプラグインの使い方
  6. blosxom plugin: ufyu
  7. SourceForge.netで開発されているblosxomはv2.0.2に
  8. push_if_first plugin
  9. paging plugin更新 #8
  10. エントリの日付と時刻をW3CDTFで

Comments

JavaScriptに対応または有効な環境の場合、ここにはてなブックマークでのこのエントリに対するコメントが表示されます。

Weblog archives

by Category

This page was last modified on 2004-08-04T11:29:37+09:00 (in 0.105 secs).