イントロダクション
ここでは、ECHOPFの基本的なアーキテクチャについて解説します。
プラグイン
ECHOPFでは、様々なアプリケーションを構成する機能をプラグインとして提供しています。
サイトマップ
ページをツリー状に蓄積し、サイトマップを構成するプラグインです。 基本的なWebサイトを構築するのに使用します。
ブログ
ニュースや新着情報といった日々追加される記事データを蓄積できるプラグインです。新着順に記事を表示したり、絞り込み検索といった機能を提供します。
データベース
商品情報などの時系列とは無関係なレコードデータを蓄積できるプラグインです。様々な切り口でレコードを検索・抽出することができます。
メールフォーム
訪問者からの問い合わせなどを受け付けるメールフォームを提供するプラグインです。
メンバー
会員の登録・管理、ログイン機能を提供するプラグインです。データへのアクセスをメンバー毎に制限できるアクセスコントロール(ACL)機能も含まれています。
EC
ショッピングカートと在庫・注文情報の管理機能を提供するプラグインです。 商品情報の蓄積と表現は、データベースプラグインが担当します。
インスタンス
前述のプラグインは、機能のみが定義された雛形のようなものであり、そのままの状態で使用することはできません。
実際にサイトアカウント内で使用するには、インスタンスを生成する必要があります。
ECHOPFでは、目的のアプリケーションを実現するのに必要なだけのインスタンスを生成し、
それらを組み合わせて構築作業を進めていきます。
下図のように、同じプラグインから複数のインスタンスを生成することもでき、
ブログやメールフォームの複数設置といったことも簡単に実現することができます。
複数のブログを設置する場合:ブログプラグインから「新着情報インスタンス」と「イベント情報インスタンス」の2つのインスタンスを生成
このように、汎用性の高いプラグインの機能を、目的に合わせて何度でも再利用できる仕組みになっています。
インスタンスフィールド
インスタンスが受け付けるデータの構造を定義したものをインスタンスフィールドと呼びます。
インスタンスフィールドは管理画面から自由にカスタマイズが可能であり、
インスタンスを用途に応じたデータ構造に対応させることができます。
メールフォームプラグインから生成した「お問い合わせフォームインスタンス」と「資料請求フォームインスタンス」で、異なるフォーム項目を定義
インターフェース
ECHOPFでは、「サイトビュー」と「REST API」の2種類のインターフェースを提供しています。
サイトビュー | ブラウザから閲覧・利用できるウェブサイトを提供するインターフェースです。 インスタンスの機能を、ページテンプレートを介して表現します。 |
---|---|
REST API | 独自のロジックを持ったネイティブアプリケーション向けに、 インスタンスが持つ機能への直接アクセスを可能にするインターフェースです。 |
これら2種類のインターフェースを提供することで、
ウェブサイトとネイティブアプリを、同じプラットフォーム上での実現を可能にしています。