Preload (1)
Loglog は、難しいサンプルであったかもしれません。XOOPS Cube における重要なフィーチャーは、プリ‐ロード、デリゲート、及び、 Xube_Service です。あなたは、これらのフィーチャーによってさまざまにサイトをカスタマイズすることができます。最初は、 Preload を学んでください。

2 種類の Preload ( Site Preload と Module Preload )があります。Site Preload は、本当にシンプルですです。

  1. /preload ディレクトリに XXXX.class.php を作成してください
  2. XCube_ActionFilter のサブクラスである XXXX クラスを定義してください
  3. 目的に合わせて preFilter() と preBlockFilter を実装してください。これらのメンバ関数は XCube_ActionFilter の仮想関数です。

XCube_ActionFilter のメンバ関数は、コモンプロセス(XOOPS2 の common.php と同様に、初期化プロセスを実行する)において呼び出されます。
XOOPS2 では、サイトオーナーが初期化プロセスにおいて彼らのコードを実行する方法が全くありませんでした。それをするために、彼らは、 XOOPS2 コアのソースコードを修正(=hack)しなければなりません。

プリ‐ロード、及び、 ActionFilter は、その問題へのソリューションです。これらのフィーチャーによって、サイトオーナーは、ハックなしで初期化プロセスにおける彼らのコードを実行し得ます。そして彼らはそれを。

あなたはプリロードファイルが新たなパブリケーション単位であることを理解します。サイトオーナーはそれを彼らの友人と共有するかもしれません。そして、彼らはそれをモジュールやテーマと同様にリリースすることが可能です。

Preload は多目的に使えます。

  • カスタマイズのための初期化コードの実行
    • 自分の関数を他のモジュールのデリゲートに追加
    • サービスやデリゲート関数を定義し、他のモジュールのためにそれをコアに追加
    • コアのオブジェクトの交換
  • 必須ライブラリのロード
|