/////////////////////////////////////////////////
// プラグインディレクトリについて
PukiWikiのページのHTMLへのコンバート時と、プラグイン機能からの値を受け取って
処理を行うプラグインを設置することができます。
このテキストは、そのプラグインの記述方法についての説明をします。
/////////////////////////////////////////////////
// ページ内でのプラグインの呼び出し
#プラグイン名
#プラグイン名(arg1,arg2...)
行頭にスペースは含めることはできない。
引数内に括弧()を使用することができる。ただし ) 単体は不可。
引数を指定しなくても呼び出せる
/////////////////////////////////////////////////
// ファイル名
プラグイン名.inc.php
/////////////////////////////////////////////////
// 関数
■function plugin_プラグイン名_convert()
HTMLへのコンバート時に呼び出される
引数は func_get_args() で配列へ格納できる。([0]〜[n])
func_num_args() によって、渡された引数の数を求めることができる。
■function plugin_プラグイン名_action()
GET・POSTメソッドでpluginを指定されたときに呼び出される
返値に array("msg" => "$1 is page") などを返すと $1 をページ名として
ページタイトルに置換される
die() を実行することにより、ページに戻らないようにできる
■function plugin_プラグイン名_init()
プラグインが読み込まれる時に呼び出されます。
$_plugin_recent_messages = array(
'_recent_plugin_li'=>'・',
'_recent_plugin_frame '=>'最新の%d件
%s'
);
set_plugin_messages($_plugin_recent_messages);
として置くと、*.lngファイルでボタンやメッセージを指定していない場合にのみ
メッセージなどがセットされます。
変数などの初期化も行えますが、PukiWiki 1.3.1(MASUI'z Edition)以降のみ
有効ですので、古いPukiWikiからは呼ばれない可能性があることを気をつけて
ください。
set_plugin_messages関数もPukiWiki 1.3.1(MASUI'z Edition)以降のみです。
/////////////////////////////////////////////////
// ファイル内容
ユーザに設定させる初期値などについては、define で定義する。
コンバート時のGET・POSTの出力内容に必要なものは refer と plugin という値で、
refer : そのページの名前($vars["page"])
plugin : プラグイン名
とします。
以下の値を global でグローバル変数にすることによって値を取得できます。
$script : スクリプト名
$get : GETメソッドによるHTTPからの引数
$post : POSTメソッドによるHTTPからの引数
$vars : GET・POST両方のメソッドによるHTTPからの引数
$vars["page"] : 開いているページ名(strip_bracket関数により[[]]を取り除ける)