Labo

[EC-CUBE 2.12.2] 商品詳細ページから商品問い合わせをできるようにする

2013年01月13日 / 投稿者名:fukap


いろいろな実装方法があると思いますが、以下のような仕様を想定したいと思います。
・商品詳細ページに、「この商品に関して問い合わせをする」というテキストリンクを設置
・そのテキストリンクをクリックすると、EC-CUBE標準のお問い合わせフォームへ移動。ただし商品IDが引き渡されるようにする。
・お問い合わせフォームに渡された商品IDはお問い合わせメールにも載るようにする。

 

1.data/Smarty/templates/default/products/detail.tpl の適当な箇所に下の一行を追加。

<a href="/contact/index.php?product_id=<!--{$arrProduct.product_id|u}-->">この商品に関して問い合わせをする</a>

2.data/Smarty/templates/default/contact/index.tpl のお問い合わせテーブル内の適当な箇所に下の一行を追加。

<tr>
    <th>お問い合わせの商品ID</th>
    <td>
        <span class="attention"><!--{$arrErr.product_id}--></span>
        <input type="text" class="box120" name="product_id" value="<!--{$arrForm.product_id.value|h|default:$smarty.get.product_id|h}-->" maxlength="<!--{$smarty.const.INT_LEN}-->" style="<!--{$arrErr.product_id|sfGetErrorColor}-->;" /> 
    </td>
</tr>

3.data/Smarty/templates/default/contact/confirm.tpl のお問い合わせ内容確認テーブル内の適当な箇所に下の一行を追加。

<tr>
    <th>お問い合わせの商品ID</th>
    <td><!--{$arrForm.product_id.value|u}--></td>
</tr>

4.data/Smarty/templates/default/mail_templates/contact_mail.tpl の任意の箇所に下の一行を追加。

■お問い合わせの商品ID :<!--{$arrForm.product_id.value}-->

5.data/class/pages/contact/LC_Page_Contact.php の lfInitParamメソッドに以下の一行を追加。

$objFormParam->addParam('商品ID', 'product_id', INT_LEN, 'n', array('MAX_LENGTH_CHECK', 'NUM_CHECK'));

[EC-CUBE 2.12.2] 商品詳細ページから商品問い合わせをできるようにする への4件のコメント

  1. 山田 より:

    いつも大変お世話になっております。
    商品IDではわかりにくいので、商品コードを表示するにはどうしたらよいでしょうか?
    どうぞよろしくお願いします。

  2. fukap より:

    返事遅くなり申し訳ございません。
    そうですね、仰る通り、商品IDよりは商品コードの方がわかり良いと思います。
    ちょっと考えてみます。

  3. ピンバック: [EC-CUBE 2.12.3] 商品詳細ページから商品問い合わせをできるようにする その2 | NAKWEB × EC-CUBE

  4. fukap より:

    山田様

    サンプルコードを書いてみましたので、ご参考ください。
    https://ec-cube.nakweb.com/blog/2129.html

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

* Copy This Password *

* Type Or Paste Password Here *

*

コメント欄にコードを挿入したい場合は、[php][/php] を使ってください。