初のCraftCMS案件を振り返る その3

この記事はCraft CMS Advent Calendar 2020 - Adventarに乗り遅れた記事です。
前回の初のCraftCMS案件を振り返る その2 \| Blog \| riatw.meの続編です。

今回はCraftCMSを使ってみて実際に感じた良いところのうちの一つ、 「標準機能のシンプルさ」を取り上げてみようと思います。

CraftCMSの標準機能はとてもシンプルに出来ています。 何でも出来ることを謳うCMSとは真逆と言っても良いかもしれません。

自分は実際にインストールして管理画面に入ってみた際にあまりのメニューの少なさに何をしたら良いのか一瞬フリーズしました。それぐらいに標準機能はシンプルに出来ています。

標準機能がシンプルなことは「習得がしやすい」、「バグが発生しづらい」、「拡張性が高い」といったメリットがあります。

CraftCMSで管理できる情報

CraftCMSで標準で管理できる情報は以下のとおりです。

サイト上で管理したい情報の種類ごとにセクション(MTのコンテンツタイプ、WPのカスタム投稿タイプ)を作成し、その中にフィールドを作り、データを登録していく形で構築を進めていきます。

エントリ

CraftCMSで一番情報が蓄積される場所。 MTで言うところのコンテンツデータ。 セクションごとにフィールドを設定できる。 フィールドではカテゴリ、タグ、アセットなどの紐付けも行える。

アセット

画像、PDFなどの各種ファイルを登録できる。 ローカルファイルだけでなく、S3にアップロードすることも可能。

グローバル

サイト全体の設定などを管理できる。 エントリにするほどでもない情報の管理に便利。(サイト名、電話番号など)

3つのセクションタイプ

セクションには3つの種類があります。

シングル

単体のページを管理する。 TOPページの一部分だけをCMS化したいといった場合に便利。 テンプレートと異なりプレビューもできる。

チャンネル

時系列の情報を管理する。 MTで言うところの記事。 店舗情報、商品情報などCraftの中では一番使うタイプ。

ストラクチャ

時系列を持たない固定のの情報を管理する。 MTで言うところのウェブページ。 一覧画面でドラッグ&ドロップで並び替えが出来るため、バナーの管理にも便利。

汎用性の高いフィールド

Craftのフィールド(MTやWPのカスタムフィールド)は以下のような様々なフィールドの種類が予め用意されており、作成したフィールドはエントリ、カテゴリ、グローバル、ユーザなどのオブジェクトに紐付けが可能です。

  • 単一行テキスト
  • 複数行テキスト
  • アセット選択
  • カテゴリ選択
  • エントリ選択

このフィールド機能がシンプルな作りなのにとても柔軟で他のCMSを長年使ってきた中で「ここがこうだったら良いのにな…」と思うことがほぼ組み込まれていて、初めて使ったときは後発のCMSってこんなに優れてるのか…とかなり感動をしました。

リッチテキストは標準機能ではありませんが、「Redactor」プラグインを導入することで利用可能です。


他のCMSを長年使ってきた立場からCraftCMSの「標準機能のシンプルさ」について触れてみました。 シンプルさを保ちつつもとても柔軟に作られていることが少しでも伝われば嬉しいです。

私はMTのヘビーユーザーですが、MTのコンテンツタイプとは似ている部分が多いので、 MTをある程度使ったことのある方はすんなり機能を理解できると思います。

MTの苦手とするところ(動的処理や多言語機能など)がCraftCMSは得意なので、 もし今MTは使えるけど他に選択肢が欲しいな…と思っている方が居ましたら、ぜひ一度お試しください。きっと気に入っていただけると思います。