I came back
Drupal8カスタムモジュール追加方法
Drupal8が出てもうしばらく経っておりますが、ついに導入しました。
そして早速カスタムモジュール追加で迷ったので、覚書を残します。
以下の手順で進めます。
- モジュールinfoファイル作成
- コントローラファイル作成
- routingファイル作成
以下を参考にしました。
https://www.drupal.org/node/2464195
https://drupal.studio-umi.jp/blog/Drupal-8-tutorial-custom-module-development
1. モジュールinfoファイル作成
drupalのインストールフォルダ/modules以下に作成するモジュールフォルダを作成します。
(今回はfadeinフォルダを作成)
直下に「fadein.info.yml」ファイルを作成。
中身は以下。
name: fadeIn type: module description: 'This is your first module.' core: 8.x
2.コントローラファイル作成
作成したモジュールフォルダ直下に以下のフォルダ/ファイルを作成する。
src/Controller/FadeInController.php
ここで呼び出すメソッドを作成します。中身は以下。
<?php // 名前空間の定義 namespace Drupal\fadein\Controller; use Drupal\Core\Controller\ControllerBase; /** * Hello World を表示するコントローラとメソッド */ class FadeInController extends ControllerBase { public function fade() { $builder = array( '#type' => 'markup', '#markup' => $this->t('<p id="one">Hello World</p>'), ); return $builder; } }
3.routingファイル作成
作成したモジュールフォルダ直下に以下のファイルを作成する。
fadein.libraries.yml
ここで、モジュールにアクセスするパスを記述します。
中身は以下
fadein.fade: path: '/fade' defaults: _controller: '\Drupal\fadein\Controller\FadeInController::fade' _title: 'Fade In' requirements: _permission: 'access content'
これで「/fade」にアクセスすると、Hello Worldが表示されます。
ソースファイル名や結果がばらばらなのは、本来やろうとしていたことができなかったからです。
カスタムモジュールでJqueryを追加しようとしていました。
できたらまた書きます。