いつまで経ってもわからない、WEBってやつは・・・(´・ω・`)

【 EC-CUBE 2.13.1 】お問い合わせフォームメモ

こんにちわ、CloudFlareがなんだか不安定?だった(気がした)ので、使うのをやめたゆでです(ΦωΦ)<そしたら遅くなったーA→Cになったー(*ノェノ)w

安定して遅いのはサーバのせいだと思われ・・(管理画面のInternalServerErrorの多発に慣れてきたこの頃・・(´・ω・`))

さてさて、EC-CUBEをまたちょこっと使ったのでメモメモφ(..)。

フォームについてのメモです(ΦωΦ)+<あ、PCのみw
(ノ´∀`*)<やる際は必ずバックアップを!責任はおいませんよー!

ページ名変更(ステップ2つ)

新規作成ページは「名称」だけでOKですが、元々あるページはちょっちめんどいです(´・ω・`)

 上記で表示される部分は、各ページ毎フォルダ該当フォルダが違いますが、 /data/class/pages/ の下の各フォルダ内該当phpをFTPから変更します(´・ω・`)。

例) 「当サイトについて」 (/abouts/index.php) を 「当サイトについて★」 に変更してみる(ΦωΦ)+

STEP1. 名前変更
/data/class/pages/abouts/LC_Page_Abouts.php (FTPにて変更)修正

$this->tpl_title = ‘当サイトについて’;

$this->tpl_title = ‘当サイトについて★’;

これで表示は変わったー(ノ´∀`*)

STEP2. DBにアクセスして値変更
MySQLならphpMyAdmin、PostgreSQLならphpPgAdminとかからDBにアクセスして テーブル「dtb_pagelayout」の「page_name」を変更

これで管理画面上のページ名、パンくずの名前も変わったー(ノ´∀`*)

フォームの項目追加(ステップ4つ)

前回の【 EC-CUBE 】2.13.1使ってみた(ΦωΦ)でもちょっと書きましたが、忘れる前にさっくりメモを。

例) テキストボックスで「追加項目」(name=fumufmu)を追加してみる(ΦωΦ)+

STEP1.フォームに項目追加
/data/Smarty/templates/default/contact/index.tpl (管理画面からOK!)に追加

 STEP2. フォームの確認画面に項目追加
/data/Smarty/templates/default/contact/confirm.tpl(FTPから変更)に追加

 STEP3. フォーム値追加
data/class/pages/contact/LC_Page_Contact.php(FTPから変更)のlfInitParamファンクション内に追加

 STEP4. お問い合わせメールに項目追加
/data/Smarty/templates/default/mail_templates/contact_mail.tpl(FTPから変更)に追加

 商品お問い合わせ(値引き渡し)(ステップ5つ)

商品詳細ページからその商品の情報を渡してお問い合わせに引き継ぐ方法(getなのでURLがちょっとだけど・・(´・ω・`)<メモだから・・w)

参考にさせていただきました
http://ec-cube.nakweb.com/blog/1915.html

例) 商品コードと商品名追加してみる(ΦωΦ)+

※商品コードは必須項目なので、あったら出す分岐してあるので通常のお問い合わせフォームへのリンクでは下記項目は表示されないようにしてあります(*´∀`*)ノ

 STEP1. 商品詳細画面に引数つけたリンク追加
/data/Smarty/templates/default/products/detail.tpl(管理画面からOK!)に追加

pで囲ってclassつけたりボタンにしたり自由に(´・ω・`)

STEP2. お問い合わせフォームに項目追加
/data/Smarty/templates/default/contact/index.tpl(管理画面からOK!)に追加

 STEP3. 確認画面に項目追加
/data/Smarty/templates/default/contact/confirm.tpl(FTPから変更)に追加

 STEP4. フォーム値追加
/data/class/pages/contact/LC_Page_Contact.php(FTPから変更)の lfInitParamファンクション内に追加

 STEP5. お問い合わせメールに項目追加
/data/Smarty/templates/default/mail_templates/contact_mail.tpl(FTPから変更)に追加

 フォーム追加(ステップ6つ)

 参考にさせていただきました
http://dame3212.net/2013/8107.html
http://ec-cube.nakweb.com/blog/675.html

 STEP1. ページ追加する
/contact/index.php
/contact/complete.php
をコピーして追加する
例)
/contact/form.php
/contact/form_complete.php

■form.php下記修正

require_once CLASS_EX_REALDIR . ‘page_extends/contact/LC_Page_Contact_Ex.php’;

require_once CLASS_EX_REALDIR . ‘page_extends/contact/LC_Page_Form_Ex.php’;

$objPage = new LC_Page_Contact_Ex();

$objPage = new LC_Page_Form_Ex();

■form_complete.php下記修正

require_once CLASS_EX_REALDIR . ‘page_extends/contact/LC_Page_Contact_Complete_Ex.php’;

require_once CLASS_EX_REALDIR . ‘page_extends/contact/LC_Page_Form_Complete_Ex.php’;

$objPage = new LC_Page_Contact_Complete_Ex();

$objPage = new LC_Page_Form_Complete_Ex();

STEP2. tpl追加
/default/contact/index.tpl
/default/contact/confirm.tpl
/default/contact/complete.tpl
をコピーして追加する
例)
/default/contact/form.tpl
/default/contact/form_confirm.tpl
/default/contact/form_complete.tpl

STEP3. メールテンプレート追加
/data/Smarty/templates/default/mail_templates/contact_mail.tpl
をコピーして追加する
例)
/data/Smarty/templates/default/mail_templates/form_mail.tpl

STEP4. class追加
/data/class/pages/contact/LC_Page_Contact.php
/data/class/pages/contact/LC_Page_Contact_Complete.php
をコピーして追加する
例)
/data/class/pages/contact/LC_Page_Form.php
/data/class/pages/contact/LC_Page_Form_Complete.php

■LC_Page_Form.php下記修正

class LC_Page_Contact extends LC_Page_Ex

class LC_Page_Form extends LC_Page_Ex

$this->tpl_title = ‘お問い合わせ’;

$this->tpl_title = ‘★フォーム’;

$this->tpl_title = ‘お問い合わせ(入力ページ)’;

$this->tpl_title = ‘★フォーム(入力ページ)’;

$this->tpl_mainpage = ‘contact/confirm.tpl’;

$this->tpl_mainpage = ‘contact/form_confirm.tpl’;

$this->tpl_title = ‘お問い合わせ(確認ページ)’;

$this->tpl_title = ‘★フォーム(確認ページ)’;

SC_Response_Ex::sendRedirect(‘complete.php’);

SC_Response_Ex::sendRedirect(‘form_complete.php’);

lfSendMail(&$objPage)ファンクション内template_idの値(数字)を新規数字にする
※管理画面のシステム設定>マスターデータ管理「mtb_mail_template」より新規に設定した数字
例)6, // template_id

■LC_Page_Form_Complete.php下記修正

class LC_Page_Contact_Complete extends LC_Page_Ex

class LC_Page_Form_Complete extends LC_Page_Ex

$this->tpl_title = ‘新規お問い合わせ(完了ページ)’;

$this->tpl_title = ‘★フォーム(完了ページ)’;

STEP5. class_extend追加
/data/class_extends/page_extends/contact/LC_Page_Contact_Ex.php
/data/class_extends/page_extends/contact/LC_Page_Contact_Complete_Ex.php
をコピーして追加する
例)
/data/class_extends/page_extends/contact/LC_Page_Form_Ex.php
/data/class_extends/page_extends/contact/LC_Page_Form_Complete_Ex.php

■LC_Page_Form_Ex.php下記修正

require_once CLASS_REALDIR . ‘pages/contact/LC_Page_Contact.php’;

require_once CLASS_REALDIR . ‘pages/contact/LC_Page_Form.php’;

class LC_Page_Contact_Ex extends LC_Page_Contact

class LC_Page_Form_Ex extends LC_Page_Form

■LC_Page_Form_Complete_Ex.php下記修正

require_once CLASS_REALDIR . ‘pages/contact/LC_Page_Contact_Complete.php’;

require_once CLASS_REALDIR . ‘pages/contact/LC_Page_Form_Complete.php’;

class LC_Page_Contact_Complete_Ex extends LC_Page_Contact_Complete

class LC_Page_Form_Complete_Ex extends LC_Page_Form_Complete

STEP6. DBの「dtb_pagelayout」に追加

★フォーム

 device_type_id 10
 page_id 最後の番号+1
 page_name ★フォーム
 url contact/form.php
 filename contact/form
 header_chk 1
 footer_chk 1
 edit_flg 2
 create_date now()
 update_date now()

★フォーム(完了ページ)

 device_type_id 10
 page_id 上記のpage_id+1
 page_name ★フォーム
 url contact/form_complete.php
 filename contact/form_complete
 header_chk 1
 footer_chk 1
 edit_flg 2
 create_date now()
 update_date now()

でけたー(ノ´∀`*)♪うはぁw