ヘッドレスDrupal–知っておくべきことすべてガイド
公開: 2020-07-24今日、ユーザーエクスペリエンス(UX)は、ユーザーがWebサイトを操作するときにどのように感じるかだけではありません。 急速に成長しているインターフェースとAPIのこの世界では、コンテンツはユーザーに卓越したUXを提供する上で最高の役割を果たします。 ペースを維持するには、アプリケーションのような速度でコンテンツを配信できる、Angular JS、ReactJSなどの売れ筋の速い動きのフロントエンドテクノロジーを採用する必要があります。
ヘッドレスDrupal(または分離されたDrupal)は、優れたデジタルエクスペリエンスを提供する革新的な機能により、非常に人気が高まっているアプローチの1つです。 Weather.com、The Tonight Show、Great Wolf Resorts、Warner Music Groupなどのビッグウィッグは、インタラクティブでユニークなフロントエンドデザインと高速読み込みのウェブサイトを顧客に提供するヘッドレスDrupalルートを採用しています。 Drupal 8のAPIファーストアーキテクチャへの取り組みにより、コンテンツはどこでも使用および表示できます。
ヘッドレスCMSとは何ですか?

頭がないかどうかは、このデジタルの世界で行うのはかなり難しい決断です。 では、ヘッドレスになることについての全体的な話題は何ですか? 簡単に言えば、ヘッドレスCMSアーキテクチャでは、CMSのフロントエンド(コンテンツのコンシューマー)がバックエンド(コンテンツのプロバイダー)から切り離されています。 これにより、コンテンツをどこにでも配信できるだけでなく、比類のないユーザーエクスペリエンスを提供する最新のフロントエンドテクノロジーを活用できます。
ヘッドレス/分離されたDrupalとは何ですか?
従来、DrupalWebサイトはマルチタスクを目的としています。 つまり、Drupalは、コンテンツのバックエンドコンテンツ管理とフロントエンドレンダリングの両方を管理します。 Drupal CMS自体が、エンドユーザーに豊富なユーザーエクスペリエンスを提供できることは間違いありませんが、要求に対する瞬時の応答、さまざまなインターフェイスでシームレスにコンテンツを配信することになると、不十分です。 分離されたDrupalアーキテクチャでは、Drupalのテーマレイヤーの代わりに、AngularJS、React、Backbone.JSなどのクライアント側フレームワークが使用されます。 ユーザーリクエストをサーバーで常に処理する必要はありません。これにより、DrupalWebサイトの速度とUXを大幅に向上させることができます。
Drupal 8のAPIファーストアーキテクチャは、コア(Drupal 8.0)にRESTAPIを導入することで最初の一歩を踏み出しました。 ただし、独自の課題(セットアップと使用法)がありました。 それ以来、JSON-APIやGraphQLなどのより優れたRESTfulおよび非RESTfulWebサービスを提供するために多くの改善が行われました。
技術的に言えば、ヘッドレスDrupalWebサイトはHTTP / JSON形式でデータを送信します。 強力なフロントエンドUIフレームワークがこのデータをレンダリングし、Webページを配信します。

分離されたDrupalの分類
従来のDrupalCMSアーキテクチャでは、ブラウザはPHPロジックによって処理されるリクエストを呼び出し、それがHTMLをレンダリングしてブラウザに送り返します。 もちろん、開発者はクライアント側の改善のためにJavascriptを埋め込むことができますが、これにより、異なるモジュールに異なるクライアント側フレームワークが使用されている状況が発生する可能性があります。 したがって、それは非常に複雑なシステムになります。
プログレッシブデカップリング
Drupalテーマレイヤーを保持しながら、ブラウザーに即座に応答できるようにしたい場合は、プログレッシブデカップリングアプローチが最善の策です。 ここであなたはあなたのケーキを持ってそれを食べることもできます! アプリケーションの初期状態はDrupalによってレンダリングされ、クライアント側のコーディングで操作できます。 モジュールはPHPまたはJavascriptで記述できますが、Drupalの強力なパフォーマンス上の利点を利用できます。
分離されたDrupalのこのバージョンでは、コンテキスト化されたインターフェース、コンテンツワークフロー、サイトプレビュー、およびその他の機能を引き続き使用でき、Drupal全体と統合できます。 コンテンツエディターとサイトアセンブラーは、この分離されたDrupalバージョンに慣れていますが、ページの一部をJavaScriptフレームワーク専用にすることで、フロントエンド開発者がサイトアセンブラーのブロックを解除したまま独自の速度を追求することもできます。
要するに、漸進的に分離されたDrupalは、レイアウト管理などの編集上のニーズと、より多くのJavaScriptを使用したいという開発者の要望との間の完璧なバランスをとる上で素晴らしい仕事をするアプローチを提供します。

これらの例のプログレッシブデカップリングスペクトルを示すグラフ– Source- Acquia
完全に分離されたアーキテクチャ
そして、完全なデカップリングがあります。ここでは、Drupalのプレゼンテーション層がクライアント側のフレームワークに完全に置き換えられています。 このバージョンの分離されたCMSは、クライアント側のフレームワークがサーバー側のプリレンダラーとしても機能するため、中断のないワークフローを可能にします。 Drupal CMSは、すべての舞台裏のジャズを処理するコンテンツリポジトリとして純粋に使用されます。 Drupalのテーマ機能を完全に無視すると、Drupalが提供するいくつかの効果的なパフォーマンス上の利点も手放すことになります。 また、Drupal Webサイトの管理インターフェースとフロントエンドを完全に分離するには、多くの再構築を行う必要があります。 サーバー側でJavascriptを使用すると、インフラストラクチャの要件も複雑になります。
完全に分離されたDrupalアーキテクチャは、JavaScriptの成長が減速の兆候を示さないことで近年注目を集めていますが、コンテンツ構造とそのプレゼンテーションの間の関心の分離が含まれます。 一言で言えば、完全に分離されたDrupalシステムを作成することは、Webエクスペリエンスをコンテンツを提供する必要のある別個のアプリケーションとして扱うようなものです。

どの分離されたDrupalソリューションがあなたに最適ですか?
従来、Drupal CMSは、コンテンツ管理とWebサイト全体のフロントエンドのレンダリングの両方を行うことを目的としています。 たくさんのプレッシャーですね。 Drupalの専門家は、Drupalの強みはバックエンドのパワーと柔軟性にあり、HTML指向ではなくサービス指向である必要があると考えています。 Drupalを分離するということは、Drupalがバックエンドシステムを処理している間に、他のシステムにフロントエンドを管理させることを意味します。 Drupalを切り離すのはなぜ良い考えなのですか?
Drupalが提供できない最先端の最新のフロントエンドテクノロジーを採用したい場合は、ReactJSやAngularJSなどの強力なフロントエンドフレームワークが必要になります。 ヘッドレスDrupalアプローチを使用すると、これらすべてを実行しながら、堅牢なバックエンドDrupalCMSを維持できます。
- Headless Drupalアーキテクチャを使用すると、「一度書けばどこにでも公開」できます。 このシステムにより、コンテンツ編集者、マーケター、およびビジネスオーナーは、コンテンツを一度作成して、複数のインターフェイスにシームレスに配信できます。
- 分離されたCMSを使用すると、フロントエンドをバックエンドのコンテンツ管理システムから分離することで、Drupalコンテンツモデルの柔軟性と効率を高めることができます。 作業を委任するのと同じように、作業負荷が減り、生産性が向上します。
- 階層化アーキテクチャは、より安全なシステムを促進します。 サイト管理者は、インフラストラクチャのさまざまな領域へのアクセスを制限できます。
- ヘッドレスDrupalを使用すると、フロントエンド開発者はWebサイトのプレゼンテーション、UIデザイン、およびUXを完全に制御できます。 優れたクライアント側フレームワークと経験豊富なフロントエンド開発者の組み合わせにより、リッチで高速なアプリケーションのようなユーザーエクスペリエンスとシームレスな双方向性を備えたWebサイトを取得できます。
- ヘッドレスDrupalモデルを使用すると、サードパーティアプリケーションとの統合がより簡単かつ効率的になります。
- フロントエンド開発者とバックエンド開発者の両方が独立して作業できるため、プロジェクトを効率的かつ迅速に提供できます。
- Webサイトを再設計する場合は、DrupalCMSを再実装する必要はありません。 同様に、バックエンドシステムの刷新は、フロントエンドを変更することなく実行できます。
誰にとってもヘッドレスDrupalですか?
Drupalを切り離すことは、中断のないアプリケーションのようなユーザーエクスペリエンスという目標を達成するのに役立ちますが、すべての人に適しているとは限りません。 理由は次のとおりです–
- ニュースサイトやブログのように、ユーザーとの対話性をあまり必要としないWebサイトは、DrupalWebサイトを切り離してもメリットがありません。
- Webサイトに完全に分離されたDrupalアーキテクチャを選択すると、ブロックの配置、レイアウトと表示の管理、コンテンツプレビュー、UIのローカリゼーションなど、Drupalテーマレイヤーに付属するいくつかのトップ(および無料)機能を手放すことになります。クロスサイトスクリプティング(XSS)などのセキュリティ機能。それらの一部は、クライアント側のフレームワークでは複製できません。
- 予算が問題である場合は、経験豊富なフロントエンド開発者のために払わなければならない価格について覚えておく必要があります。 また、欠落している(そうでなければ無料で利用できる)Drupal機能を最初から再構築するためのコスト。
ヘッドレスDrupalを使用しているのは誰ですか?
多くのトップ企業がヘッドレスDrupalアプローチを採用しており、成功を収めています。 彼らのウェブサイトはロードが速く、すべてのデバイスとインターフェースでユーザーにインタラクティブな体験を提供します。 いくつかの例は–
- ジミーファロンとの今夜のショー–フロントエンドにBackbone.jsとNode.jsを使用
- Weather [dot] com –フロントエンドにAngular.jsを使用
- Great Wolf Resorts –CoffeeScriptとSpineフレームワークを使用
- EC Red Bull Salzburg –フロントエンドにAngular.jsを使用
- Warner Music Group –フロントエンドにAngular.jsを使用
…そしてこのリストにはもっとたくさんあります。
