taggingプラグイン設置
2006/04/14 Fri 03:30
taggingしてみたかったので、abeさんのtagging plugin 0.04を設置してみました。プラグインはデータファイルがLFのみという前提で組まれていたので、CRLFにも対応してくれるよう手を入れました。とりあえずこんなかんじでしばらく様子見。日本語もいけてるようです。タギング楽しいなぁ。個別ページに行くとTag Cloudも出ますよ!(追記:その後、左メニューに移動しました)
ここをCRLF運用にしてしまったせいで、他のプラグインでも同じような手直しをすることがあって、LFだけで運用しておけばよかったと今さら後悔……最初から新しく作り直してー。まぁPerlでCRLFをLFに一括変換するスクリプトを組めばいいのか。ちょっと考えよう。
だいぶ機能的な面が満足してきたので、いいかげんデザインもいじりたいところだが、時間がない……。
追記:taggingプラグインソース内の、$link_tagと$link_cloudという2つの設定変数の値をblosxomからblosxom_tagsに変更(147行目あたり)。
# Where to link story tags (URLs defined below) my $link_tag = 'blosxom_tags'; # Where to link tags in the tag cloud (URLs defined below) my $link_cloud = 'blosxom_tags';
さらに、mod_rewriteを以下のように設定(もうちょっとエレガントにできそうだけど)。
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(tags/)(.+)/(.*) $1$2,$3 [N,QSA]
RewriteRule ^(tags)/(.*)$ blosxom.cgi?-$1=$2 [L,QSA]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ blosxom.cgi/$1 [L,QSA]
</IfModule>
すると、taggingプラグインに対して
?-tags=hoge ?-tags=hoge,foo
という形式ではなく
/tags/hoge /tags/hoge,foo
という形式でアクセスすることが可能に! データフォルダ直下にtagsというディレクトリさえ作らなければ、categoriesとバッティングすることもありません。強力すぎる……(うっとり)。
追記(4/16):Related Tagsのアンカーに入るURIは、すでに選ばれているタグに該当タグが追加されるように変更(というか改造)。
FB.com