KinoWiki.net

プラグイン > 作り方 > オーバーライドする関数

プラグイン/作り方/オーバーライドする関数

文法要素として呼ばれる関数

Plugin::do_block($page, $param1, $param2)

ブロックプラグインとして呼び出されます。

#xxx($param1){$param2}
$page
プラグインが呼び出されたページのPageクラスです。FrontPageの表示中でも、SideBarに設置されていればSideBarPageクラスが渡されます。設置されている場所にかかわらず表示中のページを取得したい場合はPlugin::getcurrentPage()を使用します。
$param1
プラグイン呼び出しの()内に書かれた内容が渡されます。
$param2
プラグイン呼び出しの{}内に書かれた内容が渡されます。
返値
プラグインが出力するhtmlを返します。

Plugin::do_inline($page, $param1, $param2)

インラインプラグインとして呼び出されます。

&xxx($param1){$param2}

引数・返値の内容はdo_blockと同じです。

Plugin::do_blocktag($page, $param1, $param2)

タグ型ブロックプラグインとして呼び出されます。

<xxx $param1>$param2</xxx>
<xxx $param1 />

引数・返値の内容はdo_blockと同じです。

オーバーライドしない場合、ブロックプラグインを呼び出します。

Plugin::do_inlinetag($page, $param1, $param2)

タグ型インラインプラグインとして呼び出されます。

<xxx $param1>$param2</xxx>
<xxx $param1 />

引数・返値の内容はdo_blockと同じです。

オーバーライドしない場合、インラインプラグインを呼び出します。

URL指定で呼ばれる関数

Plugin::do_url()

URL指定型プラグインとして呼び出されます。

返値
配列を返します。$ret['title']にはページの表題、$ret['body']には本体部に出力するhtmlを入れておきます。

タイミングが来ると呼ばれる関数

呼び出しの流れは次のようになります。

  1. KinoWiki本体初期化
  2. Plugin::init()
  3. KinoWiki本体初期化終了
  4. Plugin::doing()
  5. KinoWiki本体部表示処理
  6. Plugin::done()

Plugin::init()

KinoWiki本体初期時に呼ばれます。ここでは他クラスへのattach()やDBの初期化などを行います。

このタイミングではほかのクラスは初期化されていない場合があるので、必要最低限のことのみを行います。

Plugin::doing()

初期化後、本体部処理(showコマンドの実行など)の前に呼び出されます。

Plugin::done()

本体部処理後に呼び出されます。本体部ではリダイレクトをしてしまう場合があるので、呼び出しタイミングがdoing()とdone()のどちらでもよい場合はこちらに書きます。