2017年09月 / 08月≪ 123456789101112131415161718192021222324252627282930≫10月

インフォメーション

FC2ブログで画像等を一括アップロードするソフトを地味に配布してます。
FC2ブログ用ファイルアップロードの最新版はこちら
(ベクター)FC2ブログ用ファイルアップロード

--.--.-- (--)

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


 |  --:--  |  スポンサー広告  |  Top↑

2012.02.29 (Wed)

EC-CUBEメモ

他のもん触ると絶対忘れるのでEC-CUBEの構造をざっとおさらいできるようのメモ

・/html
公開ファイル側
CSSやimg等ユーザー側か見るものは全部こっちへ
各ページは各クラスを呼び出すだけのphpファイル
・/data
内容処理・ページテンプレート・メールテンプレート置き場

・/data/class
クラスファイル群。ec-cube側なので基本的に追加以外はいじらない

・/data/class_extends
クラスファイルにカスタマイズを加える際に利用する。
クラスファイル階層と同じ構成でExファイルがあるのでそれに対して修正をくわえる。

・/data/config/config.php
サイトURLとかデータベースの設定とかコアな設定部分

ページ追加の基本ルール
とくに処理する必要ない表示だけのページであれば、管理画面からページ追加すればいい。
新しく機能を作成する場合は

  1. /data/class/pages/機能名/LC_Page_xxx.php
    本処理

  2. /data/class_extends/page_extends/機能名/LC_Page_xxx_Ex.php
    拡張用

  3. /data/Smarty/templates/デバイス/機能名/xxx.tpl
    表示テンプレート(PC、携帯、スマホで使うなら3か所)

  4. /html/機能名/xxx.php
    ユーザーからの呼び出しページ


のファイルが必要。
なるべくページ毎にクラスを作成するみたい。
一覧ページ、詳細ページ、完了ページとか別クラス。
管理画面のレイアウトからブロック配置やテンプレートを編集できるようにするには、
dtb_pagelayoutへの登録をする。
urlに呼び出しページphp、filenameにテンプレートファイル名(.tpl無し)を入れる。
デバイス数分レコード登録する必要がある
PC:device_type_id=10
携帯:device_type_id=1
スマホ:device_type_id=2
インストール時に登録したい場合は
html/install/sql/insert_data.sqlに追記

ブロック追加の基本ルール
ページ同様、表示のみなら管理画面から。
処理有なら

  1. /data/class/pages/frontparts/bloc/LC_Page_FrontParts_Bloc_xxx.php
    本処理

  2. /data/class_extends/page_extends/frontparts/bloc/LC_Page_FrontParts_Bloc_xxx_Ex.php
    拡張用

  3. /data/Smarty/templates/frontparts/bloc/xxx.tpl
    表示テンプレート(PC、携帯、スマホで使うなら3か所)

  4. /html/frontparts/bloc/xxx.php
    ユーザーからの呼び出し用

  5. dtb_blocテーブルにデバイス分登録をする。
    tpl_path:xxx.tpl
    filename:xxx
    php_path:frontparts/bloc/xxx.php

のファイルが必要。

カスタマイズ時の注意
・基本的にinit,process,action,destroyの順で呼ばれ、本処理はactionに入れる。
・LC_Page_xxx_ExなどのExファイルにはinit,process,destroyが既に書かれているが、
actionは書かれていないのでactionをオーバーライドする場合はfunction action()で追加する。
うっかりprocessに処理入れちゃってちゃんと反映されないとかならないように注意。
parent::action()を書くかはオーバーライドする内容による。
・ブロックはpage>frontpartsの中

Smarty
・data/Smarty/templates
テンプレートファイル

・data/Smarty/templates_c
テンプレートのキャッシュファイル。反映されない場合は削除してみる

・data/Smarty/templates/default
PCのテンプレート

・data/Smarty/templates/mobile
携帯のテンプレート

・data/Smarty/templates/sphone
スマートフォンのテンプレート
jquery mobileが使われてる。


Smartyのルール
<!--{この中に書く}-->
・定数(XXXX)
<!--{$smarty.const.XXXX}-->

・変数
<!--{$xxxx}-->
クラスファイルからsmartyに値を渡す場合は
$this->xxxx = 'aaaa';
とthisに突っ込む

・連想配列
$xxx['id'] の場合
<!--{$xxx.id}-->


画像・CSSファイルの置き場所
html/user_data/packages/デバイス/css,imgのあたり。
html/user_data以下は管理画面のファイルアップロードからファイルを更新できる。


 |  20:27  |  PHP  |  トラックバック(0)  |  コメント(0)  |  Top↑

Comment

コメントを投稿する

URL
コメント
パス  編集・削除するのに必要
非公開  管理者だけにコメントを表示
 

Trackback

この記事のトラックバックURL

この記事へのトラックバック

 | BLOGTOP | 
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。