Drupal8 と Drupal9 を比較してみた

こんにちは。ディベロップメントテクノロジーセンターのモコです。
前回Drupalについてご紹介をしましたが、興味持っていただけましたでしょうか。
魅力を感じてくださったそこのあなた!
今日はもう少しDrupalの中身をお見せしたいと思います。

今年6月にDrupal9が正式リリースされました。
私自身もDrupal9での開発経験はまだないですが、こういうものは事前にどんな感じかチェックをしておく必要がありますね。
Drupal9は公式リリース前からDrupal8と概ね差がないと言われてきました。
はたしてどのような結果になるのでしょうか。
ということで、Drupal8とDrupal9を比較しながらDrupalの基本機能的なところをご紹介したいと思います。

Drupalの導入

ではまず、両者をインストールしてみましょう。
…とその前に初心者の方にも導入頂きやすいように、環境と導入までの準備を簡単にご説明します。
今回構築した環境は私のローカルPCで、OSはWindows10です。
構築環境としてMAMPを導入しています。(xamppでも構いません。)

公式サイトからDrupalCoreモジュールを取得します。
Windowsなのでzipがいいと思います。
②MAMP\htdocs直下に解凍します。
③解凍後、フォルダ名をサイト名に変更しましょう。
「drupal-X.X.X」→好きなサイト名 例)「samplesite」
翻訳サイトより日本語翻訳ファイルを取得します。
⑤翻訳ファイルをMAMP\htdocs[③のリネームフォルダ]\sites\files\translations配下に配置します。
「\files\translations」はフォルダがないので作成しましょう。
⑥DBを作成します。
MAMPを起動して「http://localhost/phpMyAdmin/server_databases.php」にアクセスしましょう。
好きなDB名を入力し、「utf8_general_ci」を選択→「作成」

※Drupalはこの記事投稿時の各最新バージョンを利用しています。

はい、ここまで出来たら早速アクセスしてみます。
「http://localhost/[③のリネームフォルダ名]」

【Drupal8】
Drupal8インストール

【Drupal9】
Drupal9インストール
インストールが始まるので各項目を設定してインストールを進めます。

はい、インストールが終わりましたー
さて、比べてみましょう。

【Drupal8】
D8インストール完了

【Drupal9】
D9インストール完了

Drupal8とDrupal9で違うところ…今のところ翻訳数くらいですかねw
翻訳はサイト上から任意の文字に変更も可能ですし、翻訳されていないものを登録することもできます。
テーマが標準テーマなのでイケてないですが、今回は目をつぶってください…
この画面がTOP画面ですが、標準で検索機能も付いているのがわかると思います。

コンテンツ登録

それでは早速コンテンツを登録してみます。
標準でインストールすると「記事」と「基本ページ」という2つのコンテンツタイプが作成されています。
(入力画面に差異がなかったのでここからは片方の画面でお届けします)
コンテンツタイプ一覧

今回は「記事」を作成します。
入力画面はこんな感じです。
右のようにプレビューも見れます。
コンテンツ登録

保存するとこんな感じです。
「記事」にはデフォルトでコメント入力欄が付きます。
編集・削除・リビジョンのタブは権限がある人のみ表示されます。

コンテンツ登録画面は全く差がありませんでした…

管理画面

では、管理画面をのぞいてみましょう。
画面上部の黒白のメニューはシステム管理者しか表示されないメニューです。
(設定で他の権限の人も見れるようにできますが、望ましくはないでしょう。)

●コンテンツ
ここは登録されたコンテンツの一覧が表示され、検索・一括操作ができます。
タブの切り替えで登録されたコメントやアップロードされたファイルの一覧も表示されます。
コンテンツ一覧

●サイトの構築
Drupalの機能を追加やレイアウトの変更などはここから進めます。
それぞれの詳細は省略します…
サイトの構築

●テーマ
ダウンロードしたテーマやカスタムテーマをここから設定します。
テーマに関わる詳細な設定も可能です(ファビコンやTOPロゴなど)。
テーマ

●機能拡張
利用したいモジュールのインストール/アンインストールを行います。
機能拡張
むむ…Drupal8ではCoreで「Testing」モジュールがありますが、Drupal9ではないようです。
ただ、デフォルト無効なので有効にしない限りは差はないですね。
【Drupal8】

【Drupal9】

●環境設定
各モジュールごとの細かい設定などはここから行います。
環境設定

●ユーザ
ユーザの一覧表示、検索、一括処理が行えます。
ユーザは管理者が作成するか、外から閲覧しているユーザが自分でユーザ登録を行えます。
もちろんどちらか一方のみに制御することも可能です。
ユーザ
別タブで権限やロールも設定できます。
権限の一部ですが、とても細かくロール単位に設定可能です。

●レポート
サイトの状態、ログの確認(Drupalは標準ではDBにログを保持します)、検索ランキングの確認などが行えます。
Drupalや拡張モジュールのUpdateの有無なども確認できます。
レポート

で…結局??

…さて、ここまで見てきましたが、ほぼ違いがありませんでした。
公式サイトを確認してみましょう…

Drupal8と9の違いについて、このように書かれています。

Drupal 9 is a cleaned-up version of Drupal 8. It is the same as the last Drupal 8 minor version with our own deprecated code removed and third-party dependencies updated.

とのことです。
あまり英語が得意ではないですが、私の英語力で日本語にしましょう。。。
「Drupal9はDrupal8のクリーンアップバージョンです。これは(Drupal内の)非推奨コードを削除し、サードパーティの依存が更新された最新のDrupal8のマイナーバージョンと同じです。」

はい、概ねこんな感じでしょうか…
実際に比較してみると、よく使われるメッセージを表示するfunctionもちゃんと削除されていました。

あとはDrupal8はSymfony3を利用していますが、Drupal9はSymfony4.4となるようです。
ようは、見栄えの更新はないということですね!
(実は私自身Drupal6、7、8と見てきていますが、見栄えが大きく変わったことは一度もありません…知ってましたごめんなさい…)

まとめ

いかがでしたでしょうか。
各詳細は細かくはお見せできませんでしたが、だいたいどんな機能が備わっているかが見て取れると思います。
Drupal8はSymfony3のEOLとともに2021年11月にEOLを迎えます。
(Drupal7はSymfonyを利用もなく、コロナの影響もあり2022年11月EOLに延期されています。)

えっ、もっとDrupalに興味を持っちゃいましたか?
ぜひ実際に入れてみて学んでみると楽しいと思います!
クレスコでも技術者育成中です。

  • このエントリーをはてなブックマークに追加