Drupal 9 テーマ作成ガイド
ここでは Drupal 9 のテーマ作成方法について説明します。テーマのフォルダ構造からファイル構成まで、この連載を読むと Drupal 9 における正しいテーマの作成方法を学ぶことができます。
Twig テンプレートで使用可能な関数
はじめに
Twigには、テンプレート内で直接使用できる便利な関数が、たくさんあります。Drupal 9 のコアには、Drupal特有のカスタム関数がいくつか追加されています。この関数は、TwigExtensionクラスで定義されています。独自のカスタムTwig関数をカスタムモジュールで定義することもできます。
Twig 関数リスト(List of Twig Functions)
Drupal コアには、Drupal 特有のカスタム関数がいくつか追加されています。この関数は、TwigExtension クラスで定義されています。
Twig テンプレートの変数のデバッグ
Drupal 9 において Twig テンプレートファイルを操作する場合、利用可能な変数はテンプレートファイルのコメントに記載されます。しかし、記載されていなかったり、テーマやモジュールで、別途変数定義されている場合、テンプレート内で利用可能な変数を検出する必要があります。Twig では、dump() 関数を使って、テンプレートファイルで利用可能な変数を検出できます。
Drupal のテーマにスタイルシート(CSS)とJavaScript(JS)を追加する
今回はDrupal 9 のテーマにjsとcssを追加する方法についての記事です。Drupalでのテーマ作成には必須の知識です。
Drupal のテーマにリージョンを追加する
今回は Drupal 9 のテーマにリージョンを追加する方法について説明します。リージョンを追加することで、リージョン内にブロックを配置可能になります。
Drupal のテーマを .info.ymlファイルで定義する
Drupal 9 のテーマを作成するには、最初に テーマに関するメタデータを Drupal に設定するファイル(THEMENAME.info.yml)作成する必要があります。これは、モジュールとインストレーションプロファイルを定義する方法に似ています。そのため、.info.yml ファイルの 'type' キーを 'theme' と設定してこれらと区別することが重要です。このページでは、THEMENAME.info.yml のサンプルファイルと、ファイルに定義することができる情報について説明します。
Drupal テーマのフォルダ構造
基本的な Drupal 9 の操作方法を学んだ後、実際に開発をする際にまず最初に突き当たる壁がテーマ(Theme)の作成方法です。ここでは、Drupal のテーマ作成の基本となるテーマフォルダの構造を説明します。