EC-CUBEプラグイン開発その3,”hello, world”と表示してみる。
伝統と格式に乗っ取り、”Hello, World”と表示させるプラグインを作ってみましょう。
ちなみにこの伝統は、C言語の本が最初らしいです。
修正箇所は以下の二箇所
1,plugin_info.phpにフックポイントを追加
prefilterTransformは、表示用Smartyファイルの前に適用されるフックポイントです。
ついでに、名前をPluginHelloに変更します。
1 2 3 4 5 6 |
static $HOOK_POINTS = array( array('prefilterTransform', 'prefilterTransform') ); /** クラス名(必須):プラグインのクラス(拡張子は含まない) */ static $CLASS_NAME = "PluginHello"; |
2,PluginHello.phpに、画面変更の処理を追加。HTMLを受け取ってお尻に文字列を追加しています。
1 2 3 4 5 6 7 8 9 10 11 12 |
/** * プレフィルタコールバック関数 * * @param string &$source テンプレートのHTMLソース * @param LC_Page_Ex $objPage ページオブジェクト * @param string $filename テンプレートのファイル名 * @return void */ static function prefilterTransform(&$source, LC_Page_Ex $objPage, $filename) { $objTransform = new SC_Helper_Transform($source); $source = $objTransform->getHTML() . "Hello, World"; } |
実行結果。なんかあちこちにhello, worldと表示されていますね(笑)
管理画面が一枚のHTMLではなく、何度も呼ばれている事の証拠です。
とりあえず、文字列をプラグインから表示させる事には成功しました!