goo blog サービス終了のお知らせ 

DEVELOPMENTOR*LEARNING RESOURCE LAB.

ソフトウェア開発現場の視点からソフトウェアと開発者の価値を高める「ホットな何か」をお届けします。(休止)

Blosxomを使ったBLOGRANGER検索リンクの単純化

2006年11月23日 | blosxom

BlosxomBLOGRANGR 2.0の「BLOGRANGER検索 初号機」へのリンクを簡単に指定できるプラグインを作成してみました。blograngerプラグインといいます。blograngerプラグインはBlosxom 2.0に対応しています。

blograngerプラグインはエントリの中で、次のようにaタグのリンク先を指定できます。

<a href="t:KEYWORD">TEXT</a>
「<a href="t:携帯電話">BLOGRANGER検索</a>」のようにaタグのリンク先に「t:」とキーワードを指定すると、「BLOGRANGER検索」のようにBLOGRANGER検索へのリンクを表示します。そのリンク先は指定したキーワードでブログを検索し、トピックで選ぶタブを使って検索結果を表示します。↓こんな感じです。
<a href="b:KEYWORD">TEXT</a>
「<a href="b:携帯電話">BLOGRANGER検索</a>」のようにaタグのリンク先に「b:」とキーワードを指定すると、「BLOGRANGER検索」のようにBLOGRANGER検索へのリンクを表示します。そのリンク先は指定したキーワードでブログを検索し、ブロガーで選ぶタブを使って検索結果を表示します。↓こんな感じです。
<a href="r:KEYWORD">TEXT</a>
「<a href="r:携帯電話">BLOGRANGER検索</a>」のようにaタグのリンク先に「r:」とキーワードを指定すると、「BLOGRANGER検索」のようにBLOGRANGER検索へのリンクを表示します。そのリンク先は指定したキーワードでブログを検索し、リンク先で選ぶタブで検索結果を表示します。↓こんな感じです。
<a href="o:KEYWORD">TEXT</a>
「<a href="o:携帯電話">BLOGRANGER検索</a>」のようにaタグのリンク先に「o:」とキーワードを指定すると、「BLOGRANGER検索」のようにBLOGRANGER検索へのリンクを表示します。そのリンク先は指定したキーワードでブログ検索を実行し、感想で選ぶタブを使って検索結果を表示します。↓こんな感じです。

BLOGRANGER検索のURLフォーマットは公開されていないので、blograngerプラグインでは、URLを手打ちで試しながら期待する動作をした中で、もっとも簡単で短かったURLフォーマットを採用しました。ですので、今後も同じように動作するかどうかは保証できません。

BLOGRANGER検索のキーワードは「UTF-8」でエンコードする必要があります。そのためblograngerプラグインでは、次のようにキーワードの文字コードをJcodeモジュールを使ってUTF-8に変換しています。

##
sub kanjicode {
  my ($textref, $kanjicode) = @_;
use Jcode;
  &Jcode::convert($textref, $kanjicode);
  return $$textref;
}

変換前のキーワードの文字コードはJcodeモジュールで自動検出しています。文字コードの自動検出やJcodeモジュールといった少し古い仕組みが許容できないときは、この「kanjicodeサブルーチン」を改良して別の仕組みに置き換えてください。またそもそもBlosxomをUTF-8ベースで動かしているならコメントアウトしてもよいでしょう。

blograngerプラグインのダウンロードは↓こちらからどうぞ。


asinプラグイン 画像なしamazon商品の代替画像を表示する

2006年10月10日 | blosxom


asinプラグイン amazon商品と画像のリンクを生成する を使うとasinからamazon商品の画像リンクを簡単に作成できるのですが、該当商品の画像がないと1×1サイズの画像が表示されてしまいます。


そこで sbで行こう Amazon の商品画像を入れ替える(改) を参考にして、画像のないamazon商品の代替画像を表示する私なりのasin.js(javascript)を作成してみました。このasin.jsは asinプラグイン のアーカイブに同封しておきましたのでダウンロードしてお使いください。



asin.jsは Prototype JavaScript Framework Class-style OO, Ajax, and more を必要とします。asin.jsを使うときはprototype.jsも合わせて指定してください。

<head>
<script type="text/javascript" src="prototype.js"></script>
<script type="text/javascript" src="asin.js"></script>
</head>

ページ内すべての画像なしリンクを代替画像に置き換えるときはbodyタグのonload属性を次のように追加します。

<body onload="Asin.noImages('<代替画像のURL>');">

特定の画像なしリンクを代替画像に置き換えるときはaタグのonload属性を次のように追加します。

<img onload="Asin.noImage(this,'<代替画像のURL>');" src="http://images-jp.amazon.com/images/P/4939128008.01.MZZZZZZZ.jpg">


次のようにaタグのid属性を指定することもできます。

<script>
  Asin.noImage('image','<代替画像のURL>');"
</script>


Asin.noImagesとAsin.noImageとも代替画像のURLを省略すると次の画像を表示します。


asinプラグイン amazon商品と画像のリンクを生成する

2006年10月10日 | blosxom

asinプラグインはオリジナルの asinプラグイン を改良したものです。amazon商品のリンクに加えてamazon画像のリンクも生成できます。 asinプラグインはblosxom 2.0に対応しています。

asinプラグインはエントリの中で、次のHTMLタグのリンク先にasinを指定できます。

a
「<a href="asin:4873111811">Amazon Hacks</a>」のようにaタグのリンク先にasinを指定すると「Amazon Hacks」のようにamazon商品のリンクを表示します。
img
「<img src="asin:4873111811">」のようにimgタグのリンク先にasinを指定すると、次のようにamazon画像を表示します。表示するamazon画像は標準サイズです。

asinプラグインはstoryの中で次の変数を指定できます。

$asin::small
前述の「<a href="asin:4873111811">Amazon Hacks</a>」や「<img src="asin:4873111811">」といったリンク先のasinから次のようにamazon画像を表示します。表示するamazon画像は小(サムネイル)サイズです。



リンク先のasinが複数あるときはエントリ先頭のasinを使います。リンク先のasinがないときは空欄になります。 imgタグのclass属性を「asin」としたのでデザインはスタイルシートで調整できます。

asinプラグインは次の設定をカスタマイズできます。

$associateid
あなたのamazonアソシエイトIDを指定できます。

amazon画像の表示サイズを変更するときは imgサブルーチンの「MZZZZZZZ」部分を修正します。

sub img {
  my ($tag) = @_;
  $tag =~ s
    !"asin:([0-9A-Z]+)"
    !""http://images-jp.amazon.com/images/P/$1.01.MZZZZZZZ.jpg""
    !iex;
  return $tag;
}

asin-0.2.1.zip (2006-06-10)
asin-0.2.0.zip (2006-06-06)
asin-0.1.0.zip


indexflavourプラグイン

2006年10月10日 | blosxom

indexflavourプラグインは「index.html」「index.rss」といったインデックスページを生成する固有のflavourを使えるようにします。つまりエントリとインデックスで異なるflavourを使い分けることができます。 indexflavourプラグインはblosxom 2.0に対応しています。

インデックスのflavourは「date.htmlindex」「story.rssindex」といったようにエントリのflavourの拡張子に「index」を加えます。インデックスページを生成するときはじめに.${flavour}indexを読込みます。読込めないときは通常どおり.$flavourを読込みます。エントリページを生成するときは.${flavour}indexを読込まずはじめから.$flavourを読込みます。

インデックスのflavourはエントリのディレクトリからルートディレクトリに向かって探していきます。そのためディレクトリ(カテゴリ)ごとにインデックスのflavourを使い分けることもできます。

indexflavour-0.1.0.zip (2006-06-04)


encodingプラグイン

2006年10月10日 | blosxom

encodingプラグインは「HTMLはSHIFT_JIS」「RSSはUTF-8」といったように flavourごとに出力先の文字コードを変更します。 encodingプラグインはblosxom 2.0に対応しています。

encodingプラグインは「Jcodeモジュール(Jcode.pm」を使って指定した文字コードに変換します。文字コードの指定がないときは変換しません。エントリやテンプレートといった入力元の文字コードは Jcodeモジュールの自動検出を使っていますので(あまり)意識する必要はありません。

encodingプラグインは次の設定をカスタマイズできます。

%encoding_flavour
flavourと文字コードの対応を指定します。「utf8」「euc」「sjis」といったJcodeモジュールの文字コードを指定します。指定のないflavourは文字コードを変換せずそのままとします。
my %encoding_flavour = (
  'rss' => 'utf8',
);

encodingプラグインは単純に出力する文字コードを変換するだけで、テンプレート中の文字コードの指定を変更したりしません。次のようにテンプレート中の文字コードは「%encoding_flavour」に合わせてご自身で変更してください。

--content-type.rss
text/xml; charset=UTF-8

--head.rss
<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF
  xmlns="http://purl.org/rss/1.0/"

encoding-0.1.0.zip (2006-06-02)


gooブログの検索結果が文字化けする

2006年10月10日 | blosxom

weblogupdatespingプラグインを使って、このサイト(私のblosxomサイト)のエントリ投稿をgooブログのpingサーバに通知しているのですが、 gooブログで検索してみると次のように文字化けしてしまいます。ほかのブログ検索サイトは正しく表示されます。なんでだろう。

▼[ weblogupdatesping ]検索結果
[blosxom] weblogupdatesping?? (DEVELOPMENTOR*LEARNING RESOURCE LAB.) 2日15時間前の記事
weblogupdatesping????(??)?http://ping.bloggers.jp/rpc/?? ... (途中省略)

このサイトのRSSはEUC-JPで発行しています。文字化けの様子を観察するとEUC-JPのRSSをUTF-8として解析しているように見えます。 gooブログはRSSをUTF-8だと仮定するのかもしれません。(本当?) このサイトのRSSをUTF-8で発行するよう改造してgooブログのpingサーバに通知してみると、今度は文字化けせず正しく検索結果が表示されました。

これを機会にこのサイトのRSSはUTF-8で発行するようにします。 ただエントリはEUC-JPのままにします。


tagプラグイン

2006年10月10日 | blosxom

tagプラグインはエントリの「blosxom plugin テクノラティ」といった特徴的なキーワード(=特徴語)をタグ付けしてリンクを生成します。tagプラグインはblosxom 2.0に対応しています。

tagプラグインはmetaプラグインを必要とします。事前に前述のサイトからmetaプラグインを入手して導入してください。

タグ付けする特徴語はエントリの中で「meta-tags:」からはじまる行で指定します。特徴語は1つ以上の空白で区切って指定します。エントリの特徴語を「blosxom」「plugin」「テクノラティ」と指定する例は次のとおりです。

meta-tags: blosxom plugin テクノラティ
meta-tags: blosxom plugin テクノラティ

「meta-tags:」からはじまる行は削除され、次のようなリンクを生成します。

<a href="http://technorati.jp/tag/blosxom" rel="tag">blosxom</a> 
<a href="http://technorati.jp/tag/plugin" rel="tag">plugin</a> 
<a href="http://technorati.jp/tag/%e3%83%86%e3%82%af%e3%83%8e%e3%83%a9%e3%83%86%e3%82%a3" rel="tag">テクノラティ</a>

生成するリンクはカスタマイズできますが、設定の初期値ではテクノラティのタグ検索に準じたリンクを生成します。テクノラティのPINGサーバにPINGを送信すればテクノラティのタグ検索の対象になる(たぶん)でしょう。詳しくはブログ記事にタグをつけよう!特集を参照してください。

tagプラグインはstoryの中で次の変数を指定できます。

$tag::anchor
「meta-tags: blosxom plugin テクノラティ」といった特徴語を「blosxom plugin テクノラティ」のように表示します。このときのリンク先は後述の設定に準じます。
$tag::subject
「meta-tags: blosxom plugin テクノラティ」といった特徴語を「<dc:subject>blosxom</dc:subject> <dc:subject>plugin</dc:subject> <dc:subject>テクノラティ</dc:subject>」のように表示します。 RSSを作成するときのitem/subjecに指定すると便利です。

tagプラグインは次の設定をカスタマイズできます。

$tag_url
特徴語のリンク先のURLを指定できます。「%s」は特徴語を$tag_charsetで指定した文字コードに変換してエンコードしたもので置換します。初期値は「http://technorati.jp/tag/%s」です。
$tag_charset
$tag_urlの「%s」を置換する特徴語の文字コードを指定します。リンク先の仕様に合わせて「utf8」「euc」「sjis」といったJcodeモジュールの文字コードを指定します。初期値は「utf8」です。

tag-0.2.0.zip (2006-05-29)
tag-0.1.0.zip (2006-05-16)


weblogupdatespingプラグイン

2006年10月10日 | blosxom

weblogupdatespingプラグインはエントリを投稿(もしくは更新)すると「http://ping.bloggers.jp/rpc/」といったpingサーバに自動的に通知します。 weblogupdatespingプラグインはblosxom 2.0に対応しています。

同じ機能を持った blosxom ping_weblogs_com_xmlrpc blog.bulknews.net というプラグインがありますが、このプラグインは「XMLRPC::Lite(SOAP-Lite)モジュール」を必要とします。 weblogupdatespingプラグインは「XMLRPC::Liteモジュール」を使わず「LWP::UserAgentモジュール」と「XML::TreePPモジュール」で実現しています。

「XML::TreePPモジュール」は [Perl] XMLTreePP - Pure Perl実装によるXMLファイル展開モジュール から入手できます。 Pure Perlのモジュールなのでより多くの環境での動作が期待できます。インストール手順も解説されていますので安心です。

weblogupdatespingプラグインは次の設定をカスタマイズできます。

@ping_url
pingサーバのアドレスを指定します。複数のpingサーバを指定できます。初期値は「http://ping.bloggers.jp/rpc/」です。
my @ping_url = (
  'http://ping.bloggers.jp/rpc/',
  'http://rpc.technorati.jp/rpc/ping',
  'http://api.my.yahoo.co.jp/RPC2',
  'http://blog.goo.ne.jp/XMLRPC',
  'http://ping.blogmura.jp/rpc/',
  'http://ping.namaan.net/rpc/',
  'http://www.accelanavi.com/anavi/ping.php',
);
$ping_charset
blosxomを実行する「UTF-8」「EUC-JP」といった文字コードを指定します。指定した文字コードを基準としてXMLRPCのリクエストとレスポンスを扱います。初期値は「EUC-JP」です。

staticとdynamicを併用する設定ではdynamicのときはpingサーバに通知しません。 staticが無効の設定ではdynamicのときにpingサーバに通知します。

weblogupdatespingプラグインは「$blosxom::plugin_state_dir/weblogupdatesping.touch」というファイルにpingサーバへの通知内容を記録します。該当ファイルのタイムスタンプよりも新しいエントリが存在するときのみpingサーバに通知します。 pingサーバへの通知に失敗しても動作を継続し、次のpingサーバへの通知を試みます。ただし、該当ファイルを作成(上書き)できないときはpingサーバに通知しません。

該当ファイルを見ればpingサーバへの通知が成功したか失敗したかを確認できます。

% cat weblogupdatesping.touch
2006-05-28 14:43:05: $VAR1 = {'methodCall' => 
  {'methodName' => 'weblogUpdates.ping','params' => 
    {'param' => [{'value' => 'DEVELOPMENTOR*LEARNING RESOURCE LAB.'},
    {'value' => 'http://developmentor.lrlab.to'}]}}};
http://ping.bloggers.jp/rpc/: $VAR1 = {'methodResponse' => 
  {'params' => {'param' => {'value' => {'struct' => {'member' => [
    {'name' => 'flerror','value' => {'boolean' => '0'}},
    {'name' => 'message','value' => {'string' => 'Thanks for the ping.'}}]}}}}}};
・・・

weblogupdatesping-0.1.0.zip (2006-05-28)


bodyプラグイン

2006年10月10日 | blosxom

bodyプラグインは「<p>楽しい<br/>日曜大工</p>」といったエントリから「楽しい日曜大工」のようにHTMLタグを除去します。 bodyプラグインはblosxom 2.0に対応しています。

body-0.2.0では「<!--楽しい-->日曜大工」といったエントリから「日曜大工」のようにHTMLコメントも除去します。さらに、foldライブラリ(fold.pl-1.6) があればHTMLタグとコメントを除去した後、指定の長さに切り詰めます。

bodyプラグインはstoryの中で次の変数を指定できます。

$body::description
「<!--<p>楽しい<br/>-->日曜大工</p>」といったエントリから「日曜大工」のようにHTMLタグとコメントを除去します。また合わせて改行コード(CRLF)も削除します。 foldライブラリがあれば指定の長さに切り詰めます。 RSSを作成するときのitem/descriptionに指定すると便利です。

bodyプラグインは次の設定をカスタマイズできます。

$description_width
「$body::description」を切り詰める長さをバイト長で指定します。 0以下を指定すると切り詰めは無効です。foldライブラリがないときも無効です。初期値は「0」です。

body-0.2.0.zip (2006-05-25)
body-0.1.0.zip


titleプラグイン

2006年10月10日 | blosxom

titleプラグインは「1st/2nd/3rd/」カテゴリの「楽しい日曜大工」といったタイトルを「[1st::2nd::3rd] 楽しい日曜大工」のように整形します。 titleプラグインはblosxom 2.0に対応しています。

titleプラグインはstoryの中で次の変数を指定できます。

$title::name
「1st/2nd/3rd/」カテゴリの「楽しい日曜日」といったタイトルを「[1st::2nd::3rd] 楽しい日曜大工」のように表示します。
$title::anchor
「1st/2nd/3rd/」カテゴリの「楽しい日曜日」といったタイトルを「[1st::2nd::3rd] 楽しい日曜日」のように表示します。このときリンク先は左から「1st/2nd/3rd/」のカテゴリ、「楽しい日曜日」のエントリとなります。
$title::breadcrumbs
「1st/2nd/3rd/」カテゴリの「楽しい日曜日」といったタイトルを「[1st::2nd::3rd] 楽しい日曜日」のようにパンくずリスト風に表示します。このときリンク先は左から「1st/」「1st/2nd/」「1st/2nd/3rd/」のカテゴリ、「楽しい日曜日」のエントリとなります。
$title::url
「楽しい日曜日」といったエントリのURLを表示します。「$blosxom::url$path/$fn.$blosxom::default_flavour」を指定するのと同じです。

titleプラグインはheadの中で次の変数を指定できます。 HTMLを作成するときのhtml/head/titleに指定すると便利です。

$title::name
「1st/2nd/3rd/」カテゴリの「楽しい日曜日」といったタイトルを「[1st::2nd::3rd] 楽しい日曜大工」のように表示します。なお、非エントリのときは「(空欄)」を表示します。
$title::anchor
「1st/2nd/3rd/」カテゴリの「楽しい日曜日」といったタイトルを「[1st::2nd::3rd] 楽しい日曜日」のように表示します。このときリンク先は左から「1st/2nd/3rd/」のカテゴリ、「楽しい日曜日」のエントリとなります。なお、非エントリのときは「(空欄)」を表示します。
$title::breadcrumbs
「1st/2nd/3rd/」カテゴリの「楽しい日曜日」といったタイトルを「[1st::2nd::3rd] 楽しい日曜日」のようにパンくずリスト風に表示します。このときリンク先は左から「1st/」「1st/2nd/」「1st/2nd/3rd/」のカテゴリ、「楽しい日曜日」のエントリとなります。なお、非エントリのときは「(空欄)」を表示します。
$title::url
「楽しい日曜日」といったエントリのURLを表示します。なお、非エントリのときは「(空欄)」を表示します。

titleプラグインは次の設定をカスタマイズできます。

$category_sep
カテゴリのセパレータを指定できます。初期値は「::」です。
$category_name
ルートカテゴリの名前を指定できます。初期値は「(none)」です。

title-0.2.0.zip (2006-05-16)
title-0.1.0.zip


dynamicとstaticのどちらでもheadで現在パスを取得する

2006年10月09日 | blosxom

blosxomプラグインを作成していると dynamicとstaticで動作が異なるため悩まされることがあります。その悩みの1つがheadでの現在パスの取得です。

次のどの変数を基準にしてもdynamicとstaticでは差があるため 1つの変数では現在パスを取得することはできません。ただし、上記の変数をうまく組み合わせると dynamicとstaticのどちらでも現在パスを取得(たぶん)できます。

  • headサブルーチンの変数
  • $blosxom::path_info
  • $blosxom::path_info_xxx

次のとおりdynamicとstaticのどちらでも現在パスを取得できるサブルーチンを用意しました。

sub head {
  my($pkg, $dir, $head_ref) = @_;
  $path = &path_info($dir);
  # ...
  return 1;
}

sub path_info {
  my($path) = @_;
  if (!$path) {
    $path = $blosxom::path_info;
  }
  if (!$path) {
    $path = join('/',
      $blosxom::path_info_yr,
      $blosxom::path_info_mo_num,
      $blosxom::path_info_da,);
  }
  $path =~ s!(^/+)|(/+$)!!g;
  return $path;
}

categoriesプラグイン ルートカテゴリを表示しない

2006年10月09日 | blosxom

categoriesプラグイン は「1st/2nd/3rd/」といったカテゴリのパスをツリー形式で表示します。また合わせてカテゴリのエントリ数も表示します。右メニューの「CATEGORIES」はcategoriesプラグインを使って表示しています。

前述のサイトからダウンロードしたcategoriesプラグインは、「/」というルートカテゴリが表示されるため(個人的に)少し冗長な印象がありました。そこでcategoriesプラグインを改造してルートカテゴリを表示しないようにしました。 categoriesプラグインの改造箇所は次のとおりです。 report_rootサブルーチンの該当部分を2箇所コメントアウトします。

sub report_root {
  my $results;

  $results = report_categories_start();
  
  #$results .= report_dir_start('/', '/', $stories{$blosxom::datadir});
  foreach (sort @{$children{$blosxom::datadir}}) {
  $results .= report_dir('/', $_);
  }
  #$results .= report_dir_end();
  $results .= report_categories_end();

  return $results;
}

また、前述のサイトからダウンロードしたcategoriesプラグインは、「1st(3)」のようにカテゴリとエントリ数が表示されるため(個人的に)少し窮屈な印象がありました。そこでcategoriesプラグインを改造し、「1st (3)」のようにカテゴリとエントリ数の間に空白を入れるようにしました。 categoriesプラグインの改造箇所は次のとおりです。 report_dir_startサブルーチンの該当部分に空白を入れます。

sub report_dir_start {
  my ($fulldir, $thisdir, $numstories) = @_;
  $numstories ||= 0;
  #return qq!<li><a href="$blosxom::url${fulldir}index.$blosxom::default_flavour">$thisdir</a>! .
  #  qq!($numstories)</li>n<ul>n!
  return qq!<li><a href="$blosxom::url${fulldir}index.$blosxom::default_flavour">$thisdir</a> ! .
    qq!($numstories)</li>n<ul>n!
  if $output_format eq 'ul';
  return qq!dir_start([[$fulldir]],[[$thisdir]],[[$numstories]])n!
    if $output_format eq 'm4';
  return '';
}

w3cdtfプラグイン

2006年10月09日 | blosxom

w3cdtf-0.1.0.zip

w3cdtfプラグインはエントリの投稿日時を「2006-02-03T07:38:00+09:00」のように W3C Date and Time Formats (日本語) に整形します。RSSを作成するときのitem/dateに指定すると便利です。 w3cdtfプラグインはblosxom 2.0に対応しています。

w3cdtfプラグインはstoryの中で次の変数を指定できます。

$w3cdtf::Y
エントリを投稿した年を「2006」のように表示します。
$w3cdtf::YM
エントリを投稿した年月を「2006-02」のように表示します。
$w3cdtf::YMD
エントリを投稿した年月日を「2006-02-03」のように表示します。
$w3cdtf::YMDhm
エントリを投稿した年月日と時分を「2006-02-03T08:03+09:00」のように表示します。
$w3cdtf::YMDhms
エントリを投稿した年月日と時分秒を「2006-02-03T08:03:00+09:00」のように表示します。なお、秒は常に「00」を表示します。
$w3cdtf::YMDhmss
エントリを投稿した年月日と時分秒を「2006-02-03T08:03:00.00+09:00」のように表示します。なお、秒は常に「00.00」を表示します。

w3cdtfプラグインはdateの中で次の変数を指定できます。

$w3cdtf::Y
エントリを投稿した年を「2006」のように表示します。
$w3cdtf::YM
エントリを投稿した年月を「2006-02」のように表示します。
$w3cdtf::YMD
エントリを投稿した年月日を「2006-02-03」のように表示します。

w3cdtfプラグインは次の設定をカスタマイズできます。

$TDZ
「-08:00」や「Z」のようにタイムゾーンを指定できます。初期値は「+09:00」です。


dateプラグイン

2006年10月09日 | blosxom

date-0.1.0.zip

dateプラグインは「2006/02/05/」といった日付のパスを「Feburary 05, 2006」のように整形します。 dateプラグインはblosxom 2.0に対応しています。

dateプラグインはdateの中で次の変数を指定できます。

$date::name
「2006/02/05/」といった日付のパスを「Feburary 05, 2006」のように表示します。
$date::anchor
「2006/02/05/」といった日付のパスを「Feburary 05, 2006」のように表示します。このときリンク先は「2006/02/05/」となります。
$date::breadcrumbs
「2006/02/05/」といった日付のパスを「Feburary 05, 2006」のようにパンくずリスト風に表示します。このときリンク先は左から「2006/02/」「2006/02/05/」となります。
$date::url
「2006/02/05/」といった日付のURLを表示します。「$blosxom::url/$yr/$mo_num/$da/」を指定するのと同じです。

dateプラグインは次の設定をカスタマイズできます。

@month_name
月の文字表記を指定できます。初期値は次のとおりです。
  • January
  • Feburary
  • March
  • April
  • May
  • June
  • July
  • August
  • September
  • October
  • November
  • December