本文へ移動
STUDIO UMI
DRUPAL BLOGDrupalブログ

Layout Builderモジュールを使ってみよう

Koki Kubota

Drupal 8.5から試験的に導入されているLayout Builderモジュールをご存知でしょうか。
Layout BuilderモジュールはコンテンツのレイアウトをGUI上から変更できるようにするモジュールです。今まではtwigテンプレート等の作成が必要なため、ユーザーがレイアウトを変更するにはハードルが高かったのですが、このモジュールによって管理画面上からユーザーがレイアウトを柔軟に変更することができます。

今回はこのLayout Builderモジュールの使い方について、簡単にご紹介します。

※2018年11月現在、Layout Builderモジュールは試験的モジュールです。今後変更される可能性がありますので、本番サイトではまだ使用しないでください。

Layout Builderモジュールの導入

モジュール本体はすでに最新版のコアに含まれているため、 /admin/modulesにてLayout Builderを有効化してください

モジュール有効化の画像

Layout Builderモジュールの使い方

コンテンツタイプごとのレイアウトを作成する

コンテンツタイプごとに共通となるレイアウトを作成することができます。 例ではArticleコンテンツタイプのレイアウトを作成していきます

手順

  1. レイアウトを設定したいコンテンツタイプの表示管理ページ(/admin/structure/types/manage/{コンテンツタイプの内部名称}/display)を表示
  2. Use Layout Builderにチェックを入れて、保存をクリック
    表示管理ページの画像
  3. Manage Layoutボタンが表示されるので、クリック
    レイアウト作成ページの画像
  4. レイアウト作成ページが表示されますので、好きなレイアウトを構築します
    • Add Sectionをクリックすると、サイドバーからOne columnやTwo columnといったレイアウトを選択することができます
      Add Sectionをクリックした画面
    • ブロックを追加をクリックすると、サイドバーから配置したいブロックを選択することができます。/admin/structure/block で配置できるブロックはもちろん、コンテンツのフィールドも選択することができます
      ブロックを追加をクリックした画面
  5. レイアウトの配置が終わったら、Save Layoutをクリックして保存します

ノードごとのレイアウトを作成する

コンテンツタイプ共通のレイアウトだけではなく、任意のノードに対してレイアウトを設定することも可能です。 前提として、対象ノードのコンテンツタイプについてUse Layout Builderが有効になっている必要があります。

手順

  1. レイアウトを設定したいコンテンツタイプの表示管理ページ(/admin/structure/types/manage/{コンテンツタイプの内部名称}/display)を表示
  2. Allow each content item to have its layout customizedにチェックを入れて、保存をクリック
    表示管理ページの画像
  3. レイアウトを設定したいノードの編集画面(/node/{nid}/edit)を開きます
  4. レイアウトタブが表示されますので、クリックします
    レイアウトタブの画像
  5. コンテンツタイプごとの時と同様、レイアウト作成ページが表示されますので、好きなレイアウトを構築します

まとめ

まだ試験的なモジュールではありますが、Layout BuilderモジュールによってGUI上で直感的にレイアウトを作成できるようになるのでとても便利ですね。コンテンツタイプごとだけでなくノードごとにもレイアウトを作成できるので、コンテンツの表示の変更がかなり柔軟に設定できるようになるのではないでしょうか。

今回ご紹介した内容では標準で用意されているレイアウトを使用しましたが、選択できるレイアウトを追加することも可能です。そのあたりについてはまた次回ご紹介できたらと思います。

スタジオ・ウミは15年以上の実績を誇るDrupal専門の開発会社です。豊富な知見とノウハウでDrupalサイトの開発や技術サポートなどDrupal関連サービスをワンストップでご提供します。

RECRUIT

新たなステージを共に歩んでいける
コアメンバーを募集しています

採用情報

CONTACT

お仕事のご相談やお見積依頼など、
お気軽にお問い合わせください。

お問い合わせ