PerlScript プラグインを使うと,投稿のあった月の総数や,カテゴリの総数を計算して表示することができる。
利用するプラグインは,nlog(n): 月別アーカイブ一覧で表示月を強調したい で月名の比較にも使った PerlScript Plugin。テンプレートの中で Perl のコードを直書きできる。もちろん,すべての Perl の機能を使えるわけではなく,制約もあるが,かなり強力である。
投稿のあった月は <MTArchiveList archive_type="Monthly"> で表示できる。表示しなくてもいいので,表示せずに数だけ数えるためだけに使う。
「list_count」というのは適当な変数名で,何でもよい。最初に 0 で初期化して,途中で1ずつ足していって,最後に表示をしている。PerlScript プラグインのすごいのは,Movable Type で使っている内部の変数にもアクセスできてしまうことである。それとも Movable Type の仕様がすごいのか? いずれにせよ,MTSetVar と MTGetVar で使っている変数は,Movable Type の中では「$ctx->{__stash}{vars}{変数}」という形で参照されているのである。
MTArchiveList を MTCategories に変えれば,カテゴリの総数もカウントすることができる。変数名は「list_count」でなくてもいいが,MTSetVar, MTPerlScript 内, MTGetVar で揃えておく必要がある。
このプラグインを使えば,何でもできてしまいそう(言いすぎ?)。
Posted by n at 2005-01-10 14:02 | Edit | Comments (0) | Trackback(2)
Master Archive Index
Total Entry Count: 1957