Cubsonベースのモジュール組み込み型モジュールの作成 (2)

本記事は,d3forum のコメント統合機能のように,他のモジュールに埋め込んで使うモジュールの作成方法を解説するものです。

対象は,Cubson でモジュールを作れて,かつ上のようなモジュールの作り方は分からない方

概略

モジュール組み込み型モジュールを作成する場合も、通常どおり Cubson の Wizard コマンドで必要なソースを生成します。

加えて、以下のソースを修正/作成します。何が書いてあるかよくわからんかもしれませんが、とりあえず以下の5つのファイルを変えれば(作れば)いい、というのがわかればOKです*1

呼び出し元モジュールのテンプレート
組み込みモジュールを呼び出す smarty を1行追加します。
smarty プラグイン
呼び出し元モジュールに埋め込まれる smartyプラグインファイルを作成します。パラメタを渡して、モジュール組み込み型モジュールの /preload で登録した関数を呼び出します。
preload ファイル
/preload にファイルを作りイベントを登録し、smarty プラグインからこのイベントを call したときにモジュール組み込み型モジュールの処理が実行されるようにします。
/actions/{Table}ImplementAction.class.php
{Table}EditAction.class.php をコピーして使います。ただし $render は使わず、XoopsTpl を使います。
/templates/{module}_{table}_implement.html
{module}_{table}_edit.html をコピーして使います。
の action にはモジュール組み込み型モジュールの URL を指定します。

*1:当然ですが、作ろうとするモジュールの機能次第でもっと変える必要が出てくるかもしれません。ここで挙げているのは「モジュール組み込み型モジュール」に限定した最低限の修正箇所です