Under the Bridge

a Picture of the Late Him

MT4.1:プラグインを書いてみよう

2008年4月12日 14:51 | Writer: yoshi | 記事本文 | コメント(0) | トラックバック(0)

超簡単なプラグインの作り方手順とソースコードを公開します。今から書き始める人には、便利かも。かく言う私も、プラグインを書くのは今日が初めてです。

必要なものですが、エディタだけです。ちなみにわたしはローカル環境(XAMPP)でテストしています。

パクったコードは

MTフォルダの、

/extras/examples/plugins/FiveStarRating/plugins/FiveStarRating

フォルダ内にある、FiveStarRating.pl というファイルを開き、エディタへコピペします。

どこを変えるのか?

#で始まる行はコメントです。いらなければ削除。なんか書く必要があればなんか書きます。

"FiveStarRating"という文字列を、プラグイン名に書き換えます。エディタの置換でOK

description => "<__trans phrase= というくだりを、作ろうとするプラグインの機能に書き換え。

author_name、author_linkを書き換え。

ソース

以下のようになります。

# 2008/04/12 by apstar
# -------------------------------------------------
package MT::Plugin::CalcRnd;
use strict;
use MT;
use MT::Plugin;
use base qw(MT::Plugin);

my $plugin = new MT::Plugin::CalcRnd({
    id => "CalcRnd",
    key => "CalcRnd",
    name => "CalcRnd",
    version => '0.1',
    description => "<MT_TRANS phrase=\"The calculation value is returned. \">",
    author_name => "apstar",
    author_link => "http://www.mtde.info/",
});
MT->add_plugin($plugin);

sub init_registry {
    my $plugin = shift;
    $plugin->registry({
        'tags' => {
            'function' => {
                'CalcRnd' => \&_hdlr_getvalue,
            },
        },
    });
}

sub _hdlr_getvalue {
    my($ctx, $args) = @_;
    my $count = 10;
    my $out = int(rand($count))+1;
    return $out;
}

1;

動かすには

pluginフォルダへ投げ込めばOKです。

以後、MTCalcRndというファンクションタグで、1から10までの数の中で適当な乱数を取得できます。

プラグイン名をMTCalcなどと汎用性の高いものにし、モデファイアで色々と拡張できないかを思案中。

トラックバック(0)

このブログ記事を参照しているブログ一覧: MT4.1:プラグインを書いてみよう

このブログ記事に対するトラックバックURL:

コメントする






Categories
Entries
Feed
スポンサードリンク

parts

フィードメーター - Under the Bridge

あわせて読みたい

なかのひと

2008 yoshi(apstar)