EC-CUBEでは、会員登録の入力画面(/entry/index.php)へ移動する際に、
ご利用規約(/entory/kiyaku.php)から移動をしないとエラーになるという仕様になっています。
この仕様は以下のデメリットがあります。
●購入直前からしか会員登録が出来ないため、トップページでポイント利用のメリットを打ち出し、すぐに登録させる事が出来ない。
●規約を別ページで用意しているため、無駄なクリックが発生。
この仕様を変更するには、以下の行をコメントアウトすれば、対処できます。
/data/class/pages/entry/LC_Page_Entry.php
if (empty($_POST) && !preg_match('/shopping/', basename($_SERVER['HTTP_REFERER']))) {
SC_Utils_Ex::sfDispSiteError(PAGE_ERROR, "", true);
}
また、規約の文章を入力画面に移動させる必要があります。
/data/Smarty/templates/default/entry/kiyaku.php の以下の行をコピー
/data/Smarty/templates/default/entry/index.php にペースト。
CSSを修正して整形する。
<textarea name="textfield" class="area470" cols="80" rows="30"
readonly="readonly"><!--{$tpl_kiyaku_text}--></textarea>
このままでは、規約の文書が表示されないため、以下のコードを挿入。
$objQuery = new SC_Query();
$objQuery->setorder("rank DESC");
$arrRet = $objQuery->select("kiyaku_title, kiyaku_text", "dtb_kiyaku", "del_flg <> 1");
$max = count($arrRet);
$this->tpl_kiyaku_text = "";
for ($i = 0; $i < $max; $i++) {
$this->tpl_kiyaku_text.=$arrRet[$i]['kiyaku_title'] . "\n\n";
$this->tpl_kiyaku_text.=$arrRet[$i]['kiyaku_text'] . "\n\n";
}
/data/Smarty/templates/default/shopping/index.phpからのリンクを修正して完了。