【Drupal 8】Twigをインクルードする方法

Drupal 8でテーマ開発の際、同じソースを何度も書くのは効率が悪いし、タイポなどミスを起こしてしまうことも考えられます。

そんな時には、Twigをインクルードさせると便利です。

公式で下記ページにてやり方が説明してありますが、日本語で備忘録として残しておきます。

Including Part Template | Drupal.org

ディレクトリ構造は以下のようになっていて、page.html.twig で header.html.twig をインクルードします。

my_theme
└css
└js
└templates
│└layout
│ └page.html.twig
└includes
│└header.html.twig
└my_theme.info.yml
└my_theme.libraries.yml

オリジナルテーマの時

イチから作成した完全オリジナルテーマの場合の記述はこちら。

{% include directory ~ '/includes/header.html.twig' %}

サブテーマの時

既存テーマをベースとしたサブテーマの場合の記述はこちら。

{% include '@my_theme/includes/header.html.twig' %}

コメント