Blosxom Plugin : z_plugins_order
読了まで:約1分
cho45 さんが 冬通りに消え行く制服ガールは、夢物語にリアルを求めない。 の blosxom というエントリ で
引用元:
ひたすら blosxom の構成決め打ちにしてみよう。 plugin のオン・オフと編集 複数ユーザ管理 あたりがあるとよさげ [> subtech グループ - 冬通りに消え行く制服ガールは、夢物語にリアルを求めない。 - blosxom ]
とか言っていたので、とりあえずプラグインのオン・オフと読み込む順番を入れ替えるプラグインを即興で書いてみた。
以下プラグインのコード。
package z_plugins_order;
use strict;
use warnings;
# 読み込むプラグインを列挙
my @plugins_order = qw(
interpolate_fancy
include_file
tagging
);
sub start {
my @plugins = ();
foreach my $plugin_name ( @plugins_order ) {
if ( defined $blosxom::plugins{$plugin_name} ) {
push @plugins, $plugin_name;
}
}
@blosxom::plugins = @plugins;
return 1;
}
1;
__END__
ライセンスはパブリックドメインで。
使い方は$plugin_dir
以下に放り込むだけ。注意としては 一番最後に読み込まれるようにしなくてはならない ぐらい。読み込まれる順番は超重要。
ちょこっと解説すると blosxom は@plugins
(プラグインからだと@blosxom::plugins
)をforeach
でまわしてプラグインを読み込んでいるので、そこをいじってやると読み込まれる順番だとかをいじれる。
losxom のコードを読めば大体わかると思う。
追記: (2006-09-12T18:40:00+09:00)
さっき気づいたけど、このプラグイン、start
サブルーチン以降のプラグインの呼び出し順序はいじれるけど、
start
サブルーチンそのものの呼び出し順序はいじれない。
start
サブルーチンの呼び出し順序を入れ替えるとなると、blosxom をハックするしかないかも。
追記終了
余談。
はじめてトラックバックを打ってみた。