CMS > headlessCMS

2020年05月16日(土) 公開

headless CMSの選定方法

キーワード

headless CMSとは?

WordPressなどのCMSと違って、データの表示機能を持っていないCMS。
表示用のデータを吐き出すAPIが用意されており、フロンド側は自由に選択できるので、Webサイト構築で柔軟性が高くなる。
MVCアーキテクチャーのWebフレームワークでいうと、Viewの部分が分離されているかんじ?

リンク

ライブラリー / フレームワーク

PHP製のheadlessCMS

  • WordPress (プラグインでheadlessに改造可能)

Tips

ベンダーロックインの回避

headless CMSのライセンスには、オープンソースとクローズドソースの2種類があった。
「Contentful」など有料のクローズドソースで人気が高いCMSもあるけど、ベンダーロックインを回避するために、クローズドソースはなるべく選ばない方が良い。
=他人の依頼なら、本人の希望で好きにすればいい。
基本的には、オープンソースのheadless CMSを選定した方が無難だと思う。

アイデア

headless CMSを自作するなら、どうするか?

  1. バックエンド
    言語、FWは何でもいい。
    1. 記事を制作する機能
    2. 静的部分(SSGで記事ページ)は、キャッシュを吐き出す機能(記事の更新のたびに再作成)
      1. 動的部分(サイドメニューなど?)は、キャッシュの場合は定期的に再作成?
      2. 動的部分で随時更新される部分は、動的に生成してAPIで提供

  2. API
    GraphQLにする。
    1. RESTfulはもう古い?一応、GraphQLでもRESTfulでも両方対応できるようにしておけば無難かも?

  3. 記事のデータ形式
    1. 無難なところではMarkdown形式。
    2. 数式や図などは、LaTeX?形式にも対応できた方が便利。
    3. Markdownよりも柔軟性の高い/新しい形式なら、AsciiDoc形式でも良いかもしれない。
      https://ja.wikipedia.org/wiki/AsciiDoc

  4. フロントエンド
    単なるデータ表示器なので、これまた何でもいい。
    1. React?にしておけば、Reactのエコシステム(ReactNativeなど)も利用できるので、後々便利かも?
      Reactにして不都合があれば、取り替えは自由。
    2. SPAにしないで、記事ごとにURLを提供するなら、Next.jsも使うべきか?



トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2020-05-16 (土) 12:23:31 (202d)