a-blog cms ブログ or カテゴリー問題 2025
このエントリーは「a-blog cms Advent Calendar 2025」の 4日目の記事です。
CMSでサイトを作るということは、エントリーの種類を分類することから始まります。来年度から弊社に入社予定の新人エンジニアさんへの課題として、新規サイト制作のサイトツリーを作る、というのがありまして、私は来週月曜がその担当なので、エントリーの分類をどう考えるべきか、という記事を書いてみようと思いました。
a-blog cms を長く使ってらっしゃるユーザーさんには釈迦に説法なエントリーになってしまいそうです。すみません。
弊社では上図のようなサイトツリー図を、制作前に作ることが多いです。上図の場合は、ブログが緑、カテゴリーが黄色、エントリーが青、静的なページが白で示されています。エントリーの分類方法としてまず「ブログかカテゴリーか問題」を最初に考えます。
ブログで分けるべき場合とは
- その領域だけを扱うユーザーが必要
- デザインがめちゃめちゃ違う
- コンセプトがめちゃめちゃ違う
- エントリーがすごいたくさんあって、しかもどんどん増える
- 時系列でエントリーを並べたい
- その領域のエントリーにだけ持たせたいカスタムフィールドがたくさんある
- その領域だけを対象にした検索をやりたい
- カテゴリーだけで作るとカテゴリー階層が深くなりそう
こんな感じかなと思います。
まず1番。これは問答無用でブログ。カテゴリーではユーザーを分けることはできない(はず)。
この1番以外は、カテゴリーでやろうと思ったらなんとかなるかも、な感じだけど、ブログで作った方がずっといいだろう、という項目です。
2番の「デザインがめちゃめちゃ違う」場合はテーマも分けてテーマとブログを一対一対応にすると実装が楽。
3番の「コンセプトがめちゃめちゃ違う」場合には実装者も運用・更新者も、ざっくり大きな塊として捉えやすいブログが向いてる。
4番の「エントリーがすごいたくさんあって、しかもどんどん増える」だと、管理画面でもそのブログのエントリーがざっと見渡せるのが良いし、5番の「時系列でエントリーを並べたい」も同じ感じ。
6番の「その領域のエントリーにだけ持たせたいカスタムフィールドがたくさんある」場合、もちろんカテゴリーでもカスタムフィールドを別にすることはできるんだけど、ブログの方がちょっと楽だと思う。運用・更新者がパッとエントリーを作ったときに、ブログだったらカスタムフィールドはきっちり揃った状態だけど、カテゴリーを選ばないでエントリーを作成し始めちゃった場合には、カテゴリーのカスタムフィールドは編集画面に揃ってないことになる。そしてエントリーのカテゴリーを変更すると別のカスタムフィールドのセットが出てくることになる。
もちろんカテゴリーであっても管理メニューをカスタマイズしておくとか、そのカテゴリー専用のエントリー作成ボタンを用意しておくとか、いろいろやりようはあるんだけど、ブログで分けた方が良いかなーと私は思います。
7番の検索対象としてくくりたい場合というのは上図で言うとお知らせとかイベントとかですよね。お知らせとかイベントとかは、ほぼ例外なくブログで分けています。
8番に関しては、私は「カテゴリー階層はできればひとつ。多くてふたつ」ということをモットーにしています。カテゴリー階層が深いといろいろと実装が面倒になることがあります。
じゃあどんなときにカテゴリーで分けるの?
上記の条件にあんまり当てはまらないな〜という場合は、全部カテゴリーでいいです。カテゴリーにしておいた方が扱いやすい。
特に私は、表示順(ソート順)として「表示順(昇順)」「表示順(降順)」を選びたい領域にはカテゴリーを使うのが好きです。表示順を時系列ではなく管理画面から操作したい場合は、その領域に属するエントリーの数は限られているものだし、どっちにしろ管理メニューをカスタマイズしておいてあげた方が、運用・更新者に喜ばれるからです。こんな感じ。
実は a-blog cms では実装途中でブログをカテゴリーに変えたり、カテゴリーをブログに変えたりすることもそんな難しくないです。でもやっぱり、実装を始める段階で決めてしまっておいたほうが、いろいろとスムーズです。
今日はブログとカテゴリーの選び方について書きました。近いうちにサブカテゴリー、タグ、カスタムフィールドの考え方についても書きたいと思います!