EC CUBE 画面追加 2パターン

オリジナルページを作るときは以下が参考になる。

http://www.happyquality.com/2009/01/23/629.htm

ユーザがオリジナルでページを増やす場合は、「user_data」下に作成する。
基本概念なだけに、EC CUBEを使用する際に最初に覚えなければ行けない情報だと思います。

管理画面->デザイン管理->ページ詳細設定から追加できる。

ページを追加すると/html/user_data/default/%追加したファイル名%.tplが生成されるので、編集する場合は管理画面のテキストエリアかこちらを使う。
追加したページはそれぞれレイアウト設定を行うことができる。(スゴイ!)


もう1つは、同じ機能のものを別途欲しい場合、例えばお問い合わせフォームが
もう1つ別に欲しいとか、、、


簡単にいうとコピペで複製しまくるっていう方法なんですが、それが最善の方法かは
知りません。自己責任でお願いします。


まずは、一番上の階層にあるcontactを複製してcontact2とします。
これで、
http://******/contact/index.php
http://******/contact2/index.php
がアクセスできるようになります。
ただ、中身はcontactに繋がっているので同じものになってしまいますので中身を書き換えます。

/contact2/index.php
/contact2/complete.php

require_once(CLASS_EX_PATH . "page_extends/contact2/LC_Page_Contact_Complete_Ex.php");

こうすると
「page_extends/contact2/LC_Page_Contact_Complete_Ex.php」ってのが
必要になってくるので
/data/class_extends/contact2/LC_Page_Contact_Ex.php

require_once(CLASS_PATH . "pages/contact2/LC_Page_Contact.php");

/data/class_extends/contact2/LC_Page_Contact_Complete_Ex.php

require_once(CLASS_PATH . "pages/contact2/LC_Page_Contact_Complete.php");

ですね。
なので、今度は「pages/contact2/〜〜」です。

/data/class/contact2/LC_Page_Contact.php
/data/class/contact2/LC_Page_Contact_Complete.php

テンプレを変える為に以下のように変えました。

$this->tpl_mainpage = 'contact2/index.tpl';

/data/class/pages/LC_Page.php
については、複製しません。コアすぎるので、、、
中身をみれば分かりますが、複製しなければいけないような定義はありません。

あとは、テンプレート側を複製します。

/data/Smarty/templates/***/contact
から
/data/Smarty/templates/***/contact2
を複製

これで終わり。