2008年10月06日

オリジナル機能ユニットの追加方法(構造説明編)

bingo!CMSの特徴ともいえる「機能ユニット」

標準での機能ユニットでは物足りないという方必見!

今回は、bingo!CMSの機能ユニットの構造をご説明します。

まず、ユニットを構成しているプログラムファイル、テンプレートファイルの配置場所は/www/usr-data/unitsになります。

unitsディレクトリ内には各機能ユニット毎にフォルダが配置されています。(注:フォルダ名はユニークにする必要があります

各ユニットディレクトリ内には
・/admin/ (設定画面テンプレート)
・XXXX.php (ユニットプログラムファイル)
・XXXX.gif (ユニットアイコン)
・XXXX.css (スタイルシートファイル)
・XXXX.tpl (表示用テンプレートファイル)
・dummy.tpl (未設定時の初期テンプレートファイル)
が含まれています。

基本的にbingo!CMSは「PHP+Smarty」の構成で動作しています。
機能ユニットのプログラム構成も同しようになります。
※Smarty とは PHP のテンプレートエンジンです。

また、上記機能ユニットファイル以外に、データベースへ作成したユニット情報をセットする必要があります。

基本機能ユニットの設定SQLは
/www/install/sql/init.sql
/www/install/sql/unit.sql
に含まれています。

たとえば、標準で付属している「お問い合わせユニット」は以下のような構成になります。

・/bContact/admin/ (設定画面テンプレート)
・/bContact/bContact.php (ユニットプログラムファイル)
・/bContact/bContact.gif (ユニットアイコン)
・/bContact/bContact.css (スタイルシートファイル)
・/bContact/bContact.tpl (表示用テンプレートファイル)
・/bContact/dummy.tpl (未設定時の初期テンプレートファイル)

データベースへの設定SQL(init.sql)
INSERT INTO tbl_unit (unit_code, unit_type,unit_name,unit_tpl_path,unit_php_path,unit_active,unit_order) VALUES ($code:tbl_unit_unit_code, 3, 'お問い合わせフォーム', 'bContact.tpl', 'bContact.php', 1, 28);

データベースへの設定SQL(unit.sql)
CREATE TABLE unit_bcontact_tmp (
pageu_code integer,
bctt_send_mail text,
bctt_subject text,
bctt_header text,
bctt_footer text,
bctt_send text,
bctt_name smallint,
bctt_kana smallint,
bctt_company smallint,
bctt_busho smallint,
bctt_yaku smallint,
bctt_zip smallint,
bctt_pref smallint,
bctt_city smallint,
bctt_add1 smallint,
bctt_add2 smallint,
bctt_tel smallint,
bctt_fax smallint,
bctt_email smallint,
bctt_comment smallint,
bctt_captcha smallint,
primary key (pageu_code)
);
CREATE TABLE unit_bcontact (
pageu_code integer,
bctt_send_mail text,
bctt_subject text,
bctt_header text,
bctt_footer text,
bctt_send text,
bctt_name smallint,
bctt_kana smallint,
bctt_company smallint,
bctt_busho smallint,
bctt_yaku smallint,
bctt_zip smallint,
bctt_pref smallint,
bctt_city smallint,
bctt_add1 smallint,
bctt_add2 smallint,
bctt_tel smallint,
bctt_fax smallint,
bctt_email smallint,
bctt_comment smallint,
bctt_captcha smallint,
primary key (pageu_code)
);


次回は、機能ユニットを具体的に作成する方法を公開します。
posted by bingo!CMS at 19:35| Comment(0) | 機能ユニット | このブログの読者になる | 更新情報をチェックする
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。