プラグインの登録
Serene Bachではプラグインは専用のAPIをコールすることで、プラグインとして登録されます。
典型的なプラグインの登録ルーチンを以下に示します。
use sb::Plugin (); sb::Plugin->register_plugin( 'lang' => { 'ja' => 'euc', 'en' => 'ascii', }, 'text' => { 'type' => 'admin, cms', 'name' => 'Short Message', 'text' => 'Writing short message on the top page.', 'author' => 'takkyun', 'detail' => 'http://serennz.cool.ne.jp/sblog/', 'version' => '0.00', }, 'file' => 'memo.txt', 'data' => 1, );
Serene BachのプラグインAPIを利用する際には、最初に
をロードする必要があります。上記例では、最初の行sb::Plugin
が該当します。use sb::Plugin ();
ここでは「use」を使っていますが、
としても構いません。require sb::Plugin;
次の行、
がプラグインの登録になります。sb::Plugin->register_plugin
のsb::Plugin
メソッドにより、プラグインを登録します。register_plugin
プラグインを登録すると、環境設定→プラグイン画面にて該当プラグインが表示されるようになります。
メソッドには引数を連想配列(ハッシュ)の形で記述します。register_plugin
# Serena BachではプラグインAPIに限らず、連想配列によるパラメータ引渡しが多用されていますので、この形式に慣れておくとプラグインの作成が容易になります。
sb::Plugin->register_plugin( 'lang' => { # 言語設定(文字コード) 'ja' => '', # 日本語 'en' => '', # 英語 }, 'text' => { # テキスト情報 'type' => '', # プラグインのタイプ 'name' => '', # プラグインの名称 'text' => '', # プラグインの簡単な説明 'author' => '', # プラグインの作成者 'detail' => '', # プラグイン配布先・詳細説明ページのアドレス 'version' => '', # プラグインのバージョン }, 'file' => '', # リソースファイル名 'data' => undef, # プラグインデータを利用するかどうか );
の引数にはregister_plugin
, lang
, text
, file
という4つの大項目があります。data
これらの値は必須ではありませんので、以下のように省略しても構いません。
sb::Plugin->register_plugin();
言語設定
では、プラグイン並びにリソースファイルの文字コードを指定します。そのプラグインで利用する文字コードは統一しておく必要があり、またここで文字コードを明示しておく必要があります。lang
テキスト情報
ではプラグイン名称などを記述します。この中のtext
はadmin moduleではメニューの名称にも利用されます。name
テキスト情報
の内容は後述するリソースファイルにも記述できます。リソースファイルを利用した場合、リソースファイルの内容が優先して利用されます。text
リソースファイル名
ではリソースファイルの名称を指定します。この項目が存在しないあるいは空の場合はリソースファイルは利用されません。file
プラグインデータ
ではプラグインAPIを介したプラグインデータを利用するかどうかを設定します。data
プラグインデータを利用する場合には
,のように'data' => 1
に対して「1」を設定します。data
comments
comment form