カスタム・モジュール開発 : 背景および前提条件

開発者ポータル でカスタム・モジュールを作成して、機能を拡張できます。 以下の情報では、カスタム・モジュール開発の入門開発者ガイドを示します。

カスタム・モジュールは、PHP で作成されます。PHP は、動的 Web ページの作成に使用されるオープン・ソースのサーバー・サイド・スクリプト言語です。 PHP 開発用の Drupal ツールに関する一般情報については、 カスタム・モジュール開発: PHP 開発用の Drupal ツールの概要を参照してください。

以下のセクションでは、カスタム・モジュール開発の概要を示しており、必要な開発言語および概念の詳細を学習するためのリンクが含まれています。 カスタム・モジュールを作成すると、 開発者ポータル ・サイトのソースに影響が及ぶため、モジュールの作成を開始する前に、 Drupal の経験と PHP の知識を得ることをお勧めします。

重要:
  • 作成するカスタム・モジュール内に IBM® API Connect モジュールを組み込むことは許可されていません。 また、ファイル・システム上の API Connect テーマ、モジュール、組み込まれているモジュール、または Drupal コアを直接編集することは許可されておらず、サポートされていません。これらのファイルの編集済みバージョンは、フィックスパックまたは iFix のインストール時に上書きされるためです。
  • すべてのカスタム開発はお客様の責任で行っていただきます。 カスタム・モジュールおよびテーマの使用はサポートされていますが、 IBM API Connect では、それらの開発や変更をサポートしていません。

オブジェクト指向プログラミング (OOP)

OOP は、開発のベスト・プラクティスとして定評があります。したがって、適切な OOP の知識を身につけてください。 クラスおよびオブジェクト に関する PHP 資料は、開始点として適しています。 PHP のベスト・プラクティスの一般的な概要については、 PHP The Right Wayを参照してください。 以下の資料も役立ちます。
Drupal では、いくつかの一般的なデザイン・パターンも使用されているため、これらの基本的な知識があることを確認する必要があります。 以下のパターンに関する資料を参照してください。

PHP の名前空間

PHP での名前空間の概念に精通している必要があります。 ほとんどの場合、Drupal コードの名前空間は、コードが属するモジュールに基づきます。

例えば、block.module の名前空間は、以下のとおりです。
namespace Drupal\block;

Drupal モジュールを作成するときには、PHP にはグローバル名前空間があること、および関数名は固有である必要があることを考慮してください。 すべてのメソッドの名前にモジュール名を接頭部として付けることをお勧めします。

例えば、custom_module という名前のモジュールがある場合、その内部の create メソッドは custom_module_create() という名前にします。

名前空間について詳しくは、以下の資料を参照してください。

依存関係の注入

依存関係の注入について基本的な理解を深めることが重要です。 Drupal はこの概念を多用しているため、多くのコア API にアクセスして使用できるようにするには、この理解が必要になります。

依存関係の注入について詳しくは、 依存関係の注入 (Dependency Injection) ( phptherightway.com)、およびそのページにリンクされている追加の記事を参照してください。 Drupal ( drupal.org) も参照してください。

Symfony

Symfony は、再使用可能な PHP コンポーネントと、Web プロジェクト用の PHP フレームワークのセットです。 Drupal では、各種 PHP プロジェクトでのコード重複を削減するために、このフレームワークを取り込んでいます。 Drupal がルーティング、セッション、およびサービス・コンテナーを処理するために使用するコードの多くは、特に Symfony から借用されています。

Symfony の機能を理解するには、 symfony.comの「 Symfony Documentation 」を参照してください。

その他の役立つ資料

  • Drupal API Annotations - Drupal がプラグインのディスカバリーに使用するさまざまなアノテーション・タイプのリスト、および実行されているコードの追加のコンテキスト/メタデータを提供します。
  • Plugin API overview - Drupalでのプラグインの使用方法の概要。
  • カスタムモジュールをチェックするためのツールが利用可能です。 drupal_checkの上GitHub,チェックするDrupal非推奨のコード。