- 2008-04-21 (月) 21:36
- MovableType


- プラグインの有無が判別できるプラグイン
モジュールのテンプレートを公開しようとした場合に、そのテンプレートの処理にプラグインが必要だった場合はどうしていますか?
プラグインのありなしで、二通り用意しているんでしょうね。
例えば一般的なプラグインなんだけど、全員がインストールしてあるわけではない場合。標準添付されたプラグインなのだけれど、ユーザーがプラグインの機能をオフにしている場合。
そういうケースで、プラグインが使用可能か判別できる、そういうMTタグがあると便利ではないですか?
IfAvailable - Test Availabiity of Plugins and Perl Modules (MT Hacks)
このプラグインは以下の情報について判別するMTタグを使用可能にします。
- perl_module - A perl module name:Perlモジュールをモジュール名で指定
- plugin_id - The registered "id" of a specific plugin.:プラグインをidで指定
- plugin_sig - The plugin "sig" of a specific plugin.:プラグインをsigで指定
Perlモジュールは、そのまんまですね。
plugin_idってなんだよって思いますが、プラグイン内のid => 'PhotoGallery',この部分みたいです。あれ、でも動かないけどなぁ?あっ、小文字で指定しなきゃまずいんだ。
plugin_sigの方は、サンプルを見るとプラグインファイル自身を指して指定してますね。
テンプレートとしては、こんな感じで扱えます。
<MTIfAvailable perl_module="XML::Parser">XML::Parser enabled<MTElse>XML::Parser disabled</MTIfAvailable> <MTIfAvailable plugin_id="userprofiles">UserProfiles enabled</MTIfAvailable> <MTIfAvailable plugin_id="photogallery">PhotoGallery enable</MTIfAvailable> <MTIfAvailable plugin_sig="PhotoGallery/MTCollate.pl">MTCollate enabled</MTIfAvailable>
これでプラグインのありなしで条件分岐する、テンプレートモジュールが作れますね。
えっ、このプラグインが入ってなくちゃ、意味ないじゃかって。
「目ざといのも災いのもと」・・・ <それは、お前だ!
- Newer >: TemplateSetExporter Plugin
- < Older: MacのFTPクライアント
ping a Trackback
- TrackBack URL for this entry.(1)







スクリプトの読み込みが完了していません。
メールフォーム(Javascriptを使用していません)や、
Twitter経由のCommentでもReplyいたします。ただし返信はブログのコメントとして行う事もあります。