Concrete CMSで使えるノーコード簡易データベース「エクスプレス」の設定方法

moriai
moriai

 

目次

 

エクスプレスってそもそも何?

エクスプレスは、ConcreteCMS(concrete5)が提供している簡易DBです。
コマンドなどを打たなくても、サイト上でテーブル作成やレコードの登録ができます。
あまり複雑なことはできませんが、かんたんなテーブル構造であれば実現することができます。

フロントページに作成したDBを表示したり、検索させたりすることも可能です。

なお、ConcreteCMSでは下記のような呼び方をしています。

データベースの一般用語 ConcreteCMSのエクスプレス用語
テーブル データオブジェクト
(エクスプレスオブジェクト、エクスプレスエンティティ)
カラム 属性
データ エントリー
テーブルID、カラムID ハンドル

当記事内の名称も上記のエクスプレス用語で解説しますので、一般用語に置き換えて読んでいただけると幸いです。

なお、弊社ブログの過去記事「商品情報や店舗検索に使える、concrete5 CMSの「エクスプレスデータベース機能」でできることのまとめ」でもエクスプレスについて触れています。
こちらもあわせて読んでみてください。

 

エクスプレスでかんたんなテーブルを作ってみる

ぱっと見ると「なんか難しそう…」と感じますが、意外とそんなに手間はかかりません。
設定する作業はおおまかに以下の3手順です。

  1. テーブル(データオブジェクト)を作成
  2. カラム(属性)を作成
  3. 入力フォームを設定

では「商品名」「商品説明」「価格」を登録する「商品」テーブルを作ってみましょう。

 

1. テーブル(データオブジェクト)を作成

管理画面 > システムと設定 > エクスプレス > データオブジェクト ページを表示します。
ページ上にある [オブジェクトを追加] をクリックします。

express_object_1.png

 

データオブジェクトを追加ページが表示されます。
オブジェクトの表示名、ハンドルを入力します。ハンドルはオブジェクトの中でユニークである必要があります。
※ 下記画像の、product というハンドルを別のオブジェクトに登録することはできません。

設定が完了したら、ページ下の [保存] をクリックします。

express_table_add.png

オブジェクト詳細ページが表示されます。
これでオブジェクトの登録は完了です。

 

2. カラム(属性)を作成

続けて属性を作成します。
今回は「商品」のオブジェクトを作成しているので「商品名」「商品説明」「価格」を追加してみましょう。

オブジェクト詳細ページの左メニューにある [属性] をクリックします。

express_object_2.png


属性の追加ページが表示されます。
[タイプを選択] プルダウンメニューをクリックして、属性一覧メニューを表示します。
「商品名」を設定するために一覧から「テキスト」をクリックします。

express_attr_add_1.png


テキスト属性の編集ページが表示されます。
ハンドルは、オブジェクトのハンドルを決めたときと同様にユニークになるようにしてください。
※ [オブジェクトのハンドル_属性の英名] のような形式で設定すると重複しにくくなります

表示名と「検索可能」のチェックボックスにチェックを入れます。
「索引インデックスにコンテンツが含まれます」は検索ブロックなどでの検索対象とするかどうかです。
「高度な検索で利用可能な項目」はページ検索などの管理画面からの検索対象とするかどうかを設定します。

設定が完了したらページ下の [新規] をクリックします。

express_attr_add_2.png


これでテキスト属性が追加されました。
続けて、同様の操作で「商品説明」と「価格」を設定するために「テキストエリア(複数行)」「数字」を追加します。

express_attr_add_3.png

express_attr_add_4.png

 

「商品名」「商品説明」「価格」の3つの属性が一覧に表示されれば完了です。

 

3. 入力フォームを設定

属性を登録したら終わり…ではなく、入力フォームを設定する必要があります。
オブジェクト詳細ページの左メニューにある [フォーム] をクリックします。

express_form_add_1.png

 

フォームページが表示されます。
ここでは用途に応じて入力フォームを分けることができたりするのですが、今回はデフォルトで用意されているものを利用します。[Form] をクリックします。

express_form_add_2.png

 

フォーム詳細ページが表示されます。
ページ上部にある [フィールドセットを追加] をクリックします。

express_form_add_3.png

 

フィールドセットを追加ポップアップが表示されます。
任意のフィールド名を入力して、ポップアップ下の [セットを追加] をクリックします。

express_form_add_4.png

今回はセット名に「商品情報」を設定しました。
このフィールドセットは、入力フォームのカテゴリのようなものです。

フィールドセットが追加されますので、セットメニューの+アイコンをクリックします。

express_form_add_5.png

 

フォームコントロールを追加ポップアップが表示されます。
[属性] タブをクリックし「商品名」をクリックします。

express_form_add_6.png

 

「商品名」のフォーム項目が追加されました。
同じ手順で「商品説明」「価格」を追加します。

express_form_add_7.png

 

「商品名」「商品説明」「価格」の3つの属性が一覧に表示されれば完了です。

これで商品テーブルが完成しました。

 

エクスプレスにデータを入力する

データの入力方法は2通りあります。

  • フォームブロックを使ってフロントページから入力
  • 管理画面から入力

今回は、管理画面からの入力方法を紹介します。

管理画面 > エクスプレス > エントリー閲覧 ページを表示します。
作成済みのオブジェクト「商品」が表示されていますので、クリックします。
express_data_add_1.png

 

ページ上にある検索ボタンの下にある [+New 商品] をクリックします。
※ 「商品」の部分は、作成したオブジェクト名が入ります。

express_data_add_2.png

 

登録フォームが表示されます。
各項目を入力し、ページ下の [商品を追加] をクリックします。

express_data_add_3.png

 

これでデータ登録は完了です。
一覧ページに戻ると、データが登録されているのを確認できます。

 

フロントページにデータを表示する

登録したデータは、ブロックを使ってフロントページに表示することができます。
表示したいページを編集モードに切り替えて、ブロック一覧からエクスプレスカテゴリの「一覧」ブロックを挿入します。

Expressエントリーリストを追加ポップアップが表示されます。
※8.5.5以降のv8シリーズではこのポップアップが狭く表示されます。ポップアップ下の境界線をドラッグして広げてください

「エンティティ」のプルダウンメニューから「商品」を選択し、ポップアップ下の [新規] をクリックします。

express_block_add_1.png

 

これで一覧表示ができました。

express_block_add_2.png

 

表示する属性や表示件数は「一覧」ブロックの設定で変更できます。
編集ポップアップの [結果] タブで選択することが可能です。

express_block_add_3.png

 

また、リンクを設定して一覧から詳細ページに遷移させることが可能です。

 

一覧ブロックでクリックした詳細データを表示させる

新規ページで、詳細データ表示用のページを作成します。
そこにブロック一覧からエクスプレスカテゴリの「詳細」ブロックを挿入します。
「エントリー」は「他のページのリストブロックからエントリーを取得」のままにします。
「エンティティ」は作成したオブジェクト「商品」を選び、完了したらポップアップ下の [新規] をクリックします。

express_block_add_4.png

 

編集ページに戻りますが、この段階では何も表示されません。
一覧ブロック側の設定を変更します。

一覧ブロックを設置しているページを編集モードに切り替えます。
一覧ブロックをクリックし、表示されたメニューから [ブロック編集] をクリックします。
編集ポップアップ内の [結果] タブをクリックし「詳細ページへリンク」項目を設定します。リンクを貼りたい項目にチェックを入れ、上述で作成した詳細ページのリンクを設定します。

設定が完了したら、ポップアップ下の [保存] をクリックします。

express_block_add_5.png

 

以上で設定は完了しました。
ページを保存または公開すると、一覧の「商品名」のところにリンクが設定されています。

express_block_add_6.png

 

リンクをクリックすると、詳細ページに遷移して、クリックしたデータが表示されます。

express_block_add_7.png

 

一覧ブロックでデータを絞り込む

管理画面のエクスプレス一覧同様、一覧ブロックにエクスプレスデータを詳細検索する機能があります。
一覧ブロックを新規挿入、あるいはブロック編集すると、エンティティ選択の下に「検索を有効にする」チェックボックスがあります。そこにチェックを入れます。


express_search_01.png

有効にしたい検索機能にチェックを入れます。
今回は、キーワード検索と、属性検索用にカテゴリーを別途追加したのでカテゴリーにチェックを入れます。選択が終わったら、他の設定(表示する属性、表示件数等)をしてポップアップ下の [新規] をクリックします。

express_search_02.png

一覧ブロックに検索ボタンが表示されるようになりました。今回はキーワード検索も追加しているので、検索ボックスも表示されています。

express_search_03.png

属性検索は[詳細検索]リンクをクリックすると表示されます。
属性を選択後、[検索] ボタンをクリックすると絞り込みが行われます。

express_search_04.png

 

おわりに

いかがでしたでしょうか?
今回はかんたんな設定をご紹介しましたが、一覧ブロックでデフォルトのソート順を指定したり、表示対象のデータを絞り込んだりすることが可能です。
また、エクスプレスに登録できる属性は上記で紹介したテキスト、テキストエリア、数値以外にも画像やサイト内ページ等様々な属性を設定することもできます。
作りたいオブジェクトに応じて、組み合わせてみてください。

 

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