Drupal 11で追加された新機能まとめ

モチヤスタッフ

本記事はDrupal Advent Calendar 2024の16日目の記事です。

Drupal 11が2024年8月にリリースされました。

少し時間が経ってしまいましたが、今回の記事ではDrupal 11についてまとめます。
Drupal 10との違いや、新機能に興味のある方はぜひご覧ください。

Drupal 11の概要

スクリーンショット Drupal.orgのDrupal11についてのページ

https://new.drupal.org/about/11

Drupal 10のリリースが2022年12月だったため、約1年半でメジャーアップデートがきたことになります。
いままでのペースに比べると早く感じますが、最近のDrupalは後方互換を意識するようになっているため、アップデートに手間はかからなくなっています。

後ほど紹介するPHPやデータベースのバージョンアップが必要になるケースが多いですが、それさえ終わってしまえばDrupal 10から11へのバージョンアップはすぐに終わりそうです。

Drupal 11のシステム要件

「Overview | System requirements」ページにシステム要件がまとめられています。
Drupal 11では、PHPは8.3以上、データベースのバージョンもほぼ最新のものが必要になります。

要件 Drupal 10 Drupal 11
ウェブサーバー Apache 2.4.7以上
Nginx 1.1以上
IIS 5以上
Apache 2.4.7以上
Nginx 1.1以上
PHPバージョン PHP 8.1以上
(8.1.6以上が推奨)
PHP 8.3以上
・Drupal 11.0はPHP 8.3のみ
・Drupal 11.1はPHP 8.4も対応
データベース MySQL 5.7.8以上
MariaDB 10.3.7以上
Percona Server 5.7.8以上
PostgreSQL 12以上
SQLite 3.26以上
MySQL 8.0以上
MariaDB 10.6以上
Percona Server 8.0以上
PostgreSQL 16以上
SQLite 3.45以上

また、Microsoft IISのサポートがDrupal 11から打ち切られています。

Drupal 10.3にも新機能は追加されている

Drupal 11に追加される機能のほとんどは、Drupal 10.3にも追加されています。

そのため、Drupal 10.3にアップデートすれば、Drupal 11との違いはPHPやデータベースの必要バージョンが上がることくらいになります。

過去バージョンのサポート状況

Drupal 7は2025年1月5日にサポート終了予定、Drupal 8、Drupal 9は既にサポートが終了済みです。
何度もDrupal 7のサポート期限は延長されてきましたが、いよいよ期限が迫っています。

参考:【2023年6月最新】Drupal 7のサポート期限が2025年1月5日までさらに延長されました

Drupal 7からの移行には、アップグレードではなく完全な移行作業(マイグレート)が必要になるため、大がかりな対応が必要になります。

Drupal 10に関しては2026年中旬までサポートされる予定なので、すぐにアップデートが必要というわけではありません。

Drupal 11の特徴的な新機能

ここからはDrupal 11で追加された機能について紹介します。

パフォーマンスの向上やキャッシュ改善、セキュリティ機能の強化など細かい部分も含めると多くなってしまうため、特徴的な機能をピックアップします。

レシピ機能によるサイト構築の効率化

新たにレシピ機能(Recipes)が追加されました。
「サイトや機能のレシピ」だと考えると、イメージしやすいかもしれません。

サイトの基本設定、ユーザー設定、コンテンツタイプなどを定義したもので、そのレシピを指定すると、Drupal側でレシピに沿ったサイトや機能を構築してくれます。

インフラの世界では「IaC(Infrastructure as Code)」という考え方があります。
大量のサーバー設定をすべて手動で行うと時間がかかりますし、手作業による抜け漏れなどのミスの恐れもあります。

サーバー設定をコードにし、それを実行すればサーバー構築が完了するようにしておけば、時間もかからず人的ミスも防げます。

レシピ機能は、まさにこのIaCに近いものを感じました。
必要な機能を持ったサイトを短時間で構築できるようになりますし、同じレシピを使えば、同じ環境をミスなく構築できます。

シングルディレクトリコンポーネント(SDC)によるUIコンポーネントの作成

Drupal10.1から試験的モジュールに追加されていた「Single Directory Components(SDC)」が安定版になりました。

最近のフロントエンド開発では、UI要素を「コンポーネント」という単位で管理し、それらを配置してページを作成していくことが主流です。

そしてそのコンポーネントを構成するファイル(Twigテンプレート・CSS・JavaScript)を1つのフォルダにまとめて管理できるようにするのがSDCです。

具体的に、ボタンコンポーネントの場合は下記のようなフォルダ構成になります。

スクリーンショット drupalのSDCのディレクトリ構成の例 custom/my_theme/components/button/ にテンプレートファイル、yml、js、cssなどのファイルが格納されている

こうすることで、ボタンコンポーネントに関する処理や見た目を修正したい場合は「button」フォルダ内のファイルを確認して修正すればいいことが分かりやすくなります。

Workspacesによるステージング環境と本番環境の簡単切り替え

「Workspaces」がコアモジュールとして追加されました。
よく開発現場では「本番環境」「ステージング環境」「テスト環境」のように、複数の環境を用意し、段階的に変更を反映して確認を行います。

本来、これらの環境は別々のDrupalを用意しますが、Workspacesを使うと1つのDrupalで管理できるようになります。

「Workspaces」モジュールを有効化すると、管理画面に新たに「ライブ」と書かれた緑色のボタンが追加されます。

スクリーンショット Workspacesモジュールを追加したとき、DrupalのAdmin tool barの右上に「ライブ」ボタンが表示されている

クリックすると他のワークスペースが表示されるので、ここから簡単に切り替えができるようになります。

スクリーンショット Admin tool bar右上の「ライブ」ボタンを押下するとStage環境を選択するUIが表示される

デフォルトでは「ライブ(本番環境)」と「Stage(ステージング環境)」の2つが用意されていて、追加も簡単にできます。

複数のDrupalを用意する必要がなくなるだけでなく、技術に詳しくないユーザーも管理画面から簡単に確認作業ができるようになります。

New access policy APIによるさらに細かい権限管理

Drupalは役割(Role)ごとに細かく権限を設定できる点が特徴でした。
それに加えて、Drupal 11からは「New access policy API」によるドメインや時間・現在のユーザーのフィールド値(コンテキスト条件)による権限設定も可能になります。

  • 「.jp」サイトは日本語サイト担当者のみ、「.en」サイトは英語サイト担当者のみ権限を付与する
  • 夜間は作業が不可になるように日中のみ権限を付与する

このように今まで以上に細かい管理ができます。

他にも、無制限のサイトアクセスができたスーパーユーザー権限のアカウントを無効にする機能も追加されました。

タクソノミーにもリビジョンが追加

いままでタクソノミーにはリビジョンが設定できませんでしたが、Drupal 11からはリビジョンの作成ができるようになりました。

スクリーンショット タクソノミーの管理画面のページ下部にリビジョンの項目が追加されている

ログメッセージを残すことで修正内容のメモを残し、[リビジョン]タブで履歴管理ができます。

管理画面メニューの刷新

まだ試験段階なので正式にコアモジュールに含まれているわけではありませんが、「Navigation」と「Navigation Top Bar」という2つのモジュールを有効化すると、管理画面メニューが大きく変わります。

スクリーンショット 「Navigation」と「Navigation top bar」モジュールを有効にした時の管理画面が表示されている

Drupalの管理画面はサイト上部に表示されていましたが、これがサイドバーに変化し、見た目も今っぽいデザインになっています。

左下のアイコンをクリックすることで開閉も可能です。

スクリーンショット Admin tool barが左サイドバーに表示され、左下の矢印ボタンを押下で開閉している様子

コアモジュールから削除されたモジュール

Drupal coreを小さくし、メンテナンスの負担を軽減するために下記のモジュールがコアモジュールから外されました。

  • Actions UI
  • Book
  • Tracker
  • Forum
  • Statistics
  • Tour

インストールすれば今まで通り使用可能なので、必要に応じてインストールしましょう。

まとめ

Drupal 11で追加された「レシピ機能」「シングルディレクトリコンポーネント」「Workspaces」は、Drupalの開発や保守管理が大きく変わる機能だと思います。

今回追加された機能以外にも、「Drupal.org Roadmap」を確認すると、今後実装予定の便利そうな機能が確認できます。

これらの機能も心待ちにしつつ、新しい機能をうまく使いこなして、効率的な開発・管理を行いましょう!

モチヤスタッフ

Drupalなど技術に関する投稿をモチヤのスタッフが行っています。

モチヤスタッフ の書いた記事一覧

最新の関連記事

Contact お問い合わせ

Drupalでの開発・運用、サーバー構築、Webサイト構築全般、制作費用などに関してお気軽にご相談ください。