Joomlaモジュール開発の学習
私が学んだ方法は、コアまたは他のサードパーティのモジュールを研究してカスタマイズすることでした。
概念としてのモジュールは、コンポーネント(2つのアプリのフロントエンド/バックエンドと言うことができます)よりも単純であり、情報の一部を表示するように設計されています。
したがって、モジュールのフォルダー/ファイルを開いてコードの読み取りを開始すると、おそらくすぐにそれに入るでしょう。
例によるJoomlaモジュールの構造
たとえば、以下の行を読みながら、Joomla 3.2で最新記事モジュールを開いてそのコードを確認できます。モジュールのフォルダーには、4つの基本ファイルがあります。
1. mod_articles_latest.php
2. helper.php
3. tmpl/default.php
4。mod_articles_latest.xml
これmod_articles_latest.php
はモジュールのメインファイルで、モジュールが呼び出されたときに最初に使用されます。モジュールを初期化し、を含め、helper.php
ヘルパーのクラスメソッドを呼び出してデータを取得し、最後にモジュールのテンプレート(default.php
)を含めてデータを表示します。
helper.php
(私たちはそれに名前を付けることができれば)ファイルには、モジュールの「機械」です。ヘルパーでは、データを取得するためのモジュールのクラスとそのメソッドを作成します。これは、モジュールがデータベースと「対話」できる場所です。このモジュールのヘルパーファイルのコードを読むと、メソッドが1 つあるModArticlesLatestHelper
Classが含まれていることがわかります。
このメソッド内で、モジュールはモジュールのバックエンド設定をチェックし、最終的に、これらの条件に基づいて、返される記事のリストを作成します。このモジュールはメソッドを使用してコンテンツモデルオブジェクトを返すことに注意してください。getList(&$params)
JModelLegacy::getInstance
これdefault.php
はモジュールのメインテンプレートであり、モジュールのコンテンツを表示する役割を果たします。-ここではmod_articles_latest.php
、モジュールのクラスを呼び出して以前に取得したデータを使用して、html出力を作成します。tmplフォルダー内にあります。*メインモジュールのファイルには、JModuleHelper::getLayoutPath
メソッドを含むテンプレートファイルが含まれていることに注意してください。これにより、最初にテンプレートのオーバーライドがチェックされます。
最後に、mod_articles_latest.xml
私はそれをモジュールの「大使」のように呼びます。これは、インストール中にモジュールをJoomlaに「導入」するファイルであり、インストーラーによってコピーされるファイルを指定し、モジュールマネージャーによって使用されるモジュールのパラメーターに関する情報と追加情報も含まれていますモジュールについて。
これらは、基本的なモジュールの重要な部分です。あなたが考慮したいかもしれないもう一つの側面は、複数の言語のサポートです。これは、言語文字列と言語翻訳ファイルを使用することで実現できます。ここまでうまくいったとしたら、基本的なモジュールを作成するために、言語サポートを追加するのはかなり簡単でしょう。