商品情報や店舗検索に使える、Concrete CMSの「エクスプレスデータベース機能」でできることのまとめ

菱川拓郎
菱川拓郎

concrete5では、サイトマップとは独立して商品情報や店舗情報といった用途に使えるデータベースが用意されています。データベースは使ったことがない方にはなかなかなじみが薄い機能だと思いますが、例えば kintone を使っている方は、イメージしやすいかもしれません。このconcrete5のデータベース機能でできることをまとめました。

なぜCMSにデータベース機能が必要なのか?

例えば、店舗情報を掲載したい場合。各店舗の紹介ページを作ればいいのではないか?独立したデータベースで管理する必要があるのだろうか?という疑問があるかと思います。もちろん、その通りではあります。しかし、店舗情報を表示するのは、店舗の紹介ページに限られるでしょうか。例えば、下記のようなケースが考えられます。

  • 商品ページに、実際に見ることができるショールームの店舗名と住所の一覧を表示する。
  • キャンペーン等のお知らせページの下に、実施店舗のアクセス情報等を掲載する。

それぞれ、店舗の名前や住所などの情報を毎度入力しても、表示結果は同じです。しかし、管理の手間は段違いです。1箇所に集約してデータを保管し、必要に応じて呼び出して使う方が圧倒的に管理コストを削減でき、しかもタイプミスもありません。

さらに、ページではなくデータとして管理することで、複合条件での検索に対応することも容易になります。

データベース設計

データベースのフィールド定義を画面上で行うことができます。まずデータベースの名前を決めます。下記画像では「店舗」という名前のデータベースを作成しました。この店舗データベースに対して、どのような情報を入力させるかを「属性」を使って設定していきます。テキストや画像、URLなど、様々なタイプのデータを持たせることができます。

エンティティ属性

データベースごとの関連性を定義することもできます。下記の画像では「店舗」と「取扱サービス」を関連づけています。このアソシエーション設定を行うことで、特定の店舗で取り扱っているサービスの一覧、特定のサービスを取り扱っている店舗一覧、などのデータをサイトに表示することができるようになります。

アソシエーション設定

データの登録・編集・表示フォームも画面上で設定していきます。先に設定した属性やアソシエーションを、どのような順番で入力させるかを設定できます。ラベルや説明文を調整して、データ登録担当者に使いやすいフォームを作成しましょう。

エクスプレスフォーム設定

以上の設定を行うことで、プログラム一切不要でデータ登録フォームが完成します。

エントリー投稿フォーム

データの一覧・検索画面も自動で作成されます。CSVで出力する機能も標準で搭載されています。

エントリー一覧

データベースの利用

作成したデータベースに登録したデータは「エクスプレスエントリーリスト」「エクスプレスエントリー詳細」の2つのブロックをサイトに配置することで、サイト内で利用することができます。

エクスプレスエントリーリストの設定

データベースをサイトに表示するには、エクスプレスエントリーリストブロックを使います。まず、どのデータベースを表示するかを選択します。検索機能も標準でサポートされており、属性やアソシエーションごとの複合検索にも対応しています。

エクスプレス一覧ソース検索設定

表示するデータは、指定した条件であらかじめ絞り込んでおくことが可能です。

エクスプレス一覧フィルター設定

データの表示件数や、並び替えといった設定も個別に行うことができます。ドラッグ&ドロップで並び替えた任意の並び順で表示させることもできます。

エクスプレス一覧表示結果設定

画面には下記のような検索フォームと一覧の組み合わせで表示されます。素っ気ない見た目ですが、カスタムテンプレートを作成することで、自由にデザインはカスタマイズすることができます。

エクスプレス一覧ブロック表示例

エクスプレスエントリー詳細の設定

データベースの一覧ではなく、特定の1件のデータを画面に表示する場合は、エクスプレスエントリー詳細ブロックを使います。

主に一覧から特定のデータをクリックした際に選択したデータを表示するのに使いますが、それ以外にも任意で選択したデータを表示するのにも使えます。

エクスプレス詳細ブロック設定

画面にどのデータが表示されるかは、管理画面から設定することも可能ですが、実際のプロジェクトでは、こちらもカスタムテンプレートを開発して独自のデザインに対応させることが多いかと思います。

エクスプレス詳細ブロック表示例

実際の活用事例

データベース機能を実際に活用されている事例です。公開されている以外にも様々な活用事例がありますので、お気軽にお問い合わせください。