Headless(ヘッドレス) CMSとしてのDrupal、Headlessとは

阿部 正幸
アイキャッチ画像

Headless(ヘッドレス)または、Decoupled(ディカップル) CMSと言う言葉をよく耳にするようになりました。理由は、昨今1社が保有するウェブサイトや、コンテンツを配信するデバイス増え続けているからです。

目次

Headless(ヘッドレス)CMSが求められる理由

Headless(ヘッドレス)CMSが求められる理由は、いくつかあります。

コンテンツ配信のため

昨今1社が保有するウェブサイトや、コンテンツを配信するデバイス増え続けているため、Headless(ヘッドレス)CMSが求められることが多くなってきました。
なぜ1社が保有するウェブサイトや、コンテンツを配信するデバイスが増えると、Headless(ヘッドレス)CMSが必要になるかと言うと、サイトや、デバイスごとにコンテンツを管理するシステムを導入すると、多くの運用コストがかかるからです。

これまで1サイトに1つのCMSが導入されてきましたが、下図は1つのコンテンツ管理システム(Drupal)が様々なデバイスにコンテンツを配信しているイメージです。

サイトや、デバイスが増え続けても、コンテンツを管理するシステムが1つのため、運用コストが膨らむのを抑えることができます。

バックエンドとフロントエンドの分離

Headless(ヘッドレス)CMSを導入することで、バックエンドと、フロントエンドを分離することができます。

フロントエンドは、Reactや、Vue.js、Riot.jsなどを使いフロントエンドを実装しますので、デザインの再構築(サイトリニューアル)による、バックエンドの作り変えが不要になります。運用者は常に同じシステムでサイトを更新することができ、リニューアル時に大きなコストとして発生するコンテンツの載せ替え費用を大きく削減することができます。

下記図の「Monolithic」が、これまでのCMSで、「Decoupled(分離)」が、Headless(ヘッドレス)CMSです。

これまでのCMSとHeadlessCMSの比較画像
(画像引用:A How-to Guide to Headless and Decoupled CMS

DrupalをHeadless化する方法

DrupalをHeadless化する方法はとても簡単です。

まずは下記2つのモジュールを有効にします。

  • RESTful Web Services
  • REST UI

これで準備が整いました。

記事やユーザー情報など単一のリソースを配信

  1. 管理画面から「環境設定 > REST」にアクセス
     
  2. 記事を配信する場合はContent横の「有効」ボタンをクリック

    Content横の「有効」ボタンの位置
     
  3. 許可するデータ形式と、処理を選択し「設定保存」をクリック

    許可するデータ形式、処理の設定画面
    なお、メソッドは下記の通りです。
    GET : 情報取得
    POST : 記事投稿
    DELETE : 記事削除
    PATCH : 記事編集
     
  4. データリクエスト

    設定変更後下記のURLでアクセスすると、指定したリソースのJSONデータが出力されます。
    https://example.com/node/[node_id]?_format=json

記事一覧などのリスト

記事一覧などのリストはビューズ(Views)を使います。

  1. 管理画面の「サイト構築 > ビューズ」にアクセスし、「REST出力を提供する」にチェックを入れ、RESTのパスを指定します。

    「REST出力を提供する」にチェックを入れ、RESTのパスを指定する画面
     
  2. 「Fields」に出力したい項目、「フィルター」に抽出したい条件、「並び替え」にソートの順番を指定し、保存をクリックします。

    「Fields」、「フィルター」、「並び替え」をそれぞれ指定した画面
     
  3. 設定した「/rest/v1/test」にアクセスすると、JSONデータが出力されます。

以上が、DrupalをHeadless化する方法でした。

さいごに

Headless化の必要性や、Headless化の方法を簡単にですがお伝えさせていただきました。
世界ではDrupalを使い、ウェブサイトをHeadless化する事例が増え続けています。

世界的にもトラフィックが多いサイトとして有名なWeather.comは、Drupalがバックエンドで月間100億ビジターのトラフィックを支えています。

現状のウェブサイトの表示と、RESTとしての配信を1つのCMSで構築できるのは大変魅力的です、REST配信をお考えの方はDrupalを一度検討してみると良いかもしれません。

 

 

 

阿部 正幸/ 代表取締役

Drupal歴15年、ウェブマーケティング、インフラ構築、AP開発が守備範囲です。
キャッチボールと日本酒が好きです。天気の良い日に、誰かキャッチボールして、立呑に付き合ってください。
好きなDrupalモジュールはIMCEです。

阿部 正幸 の書いた記事一覧

  • Facebook

最新の関連記事

Contact お問い合わせ

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