Hook(処理のフック) - opensource-workshop/connect-cms GitHub Wiki

Hook Plugin

  • 一般プラグインのviewのbeforeのタイミングで、処理を追加できる

ファイル

app/Plugins/Hook/User/{プラグイン名}/{プラグイン名}{メソッド名}{Hook}.php
例)
app/Plugins/Hook/User/Databases/DatabasesDetailHook.php

フック・プラグイン

class DatabasesDetailHook extends UserHookBase
{
    /* オブジェクト変数 */

    /**
     *  フック関数
     */
    public function hook($request, $page_id, $frame_id, $id = null)
    {
        // id の存在チェック
        if (empty($id)) {
            return null;
        }

        // 画面に渡す変数
        $hook = array();

        // データベースの行データの取得
        $databases_inputs = DatabasesInputs::find($id);

        // データベースの詳細データの取得
        if ($databases_inputs) {
            $databases_input_cols = DatabasesInputCols::where('databases_inputs_id', $id)->get();
        }
        else {
            $databases_input_cols = null;
        }

        // 画面に渡す値
        $hook['databases_inputs']     = $databases_inputs;
        $hook['databases_input_cols'] = $databases_input_cols;

        return $hook;
    }
}

画面

{{--
 * 詳細表示画面テンプレート。
 *
 * @author 永原 篤 
 * @author 井上 雅人 
 * @copyright OpenSource-WorkShop Co.,Ltd. All Rights Reserved
 * @category データベース・プラグイン
--}}
@extends('core.cms_frame_base')

@section("plugin_contents_$frame->id")

@php
// ここで、$hookにデータがきます。
print_r($hook);
@endphp
⚠️ **GitHub.com Fallback** ⚠️