[ec-cube] 消費税8〜10%に備えて税込と税抜で価格を表示させる

これから消費税が8〜10%と段階的に増してくので、テンプレートファイルを少しいじって「税込」と「税抜」を一緒に表示するように変更しましょう、というお話です。

環境

・EC-CUBE:2.11.1(※2012年6月にインストールしたEC-CUBEです)
・PHP 5.1.6
・MySQL 5.1.36

変更後の価格表示例

eccube_税抜表示通常価格(税抜): 2,670 円 (税込: 2,804 円)
販売価格(税抜): 1,500 円 (税込: 1,575 円)

税込と税抜価格を表示させる

(1)まず、products.js は コメントアウトします

products.jsを削除(またはコメントアウト)しないと 「<span id=”price01_dynamic”></span>」「<span id=”price02_dynamic”></span>」 で税抜価格が税込価格上書きされてしまい、税抜価格がうまく表示されません。

【対象ファイル】
・/data/Smarty/templates/default/products/list.tpl
・/data/Smarty/templates/default/products/detail.tpl

<script type="text/javascript" src="<!--{$smarty.const.ROOT_URLPATH}-->js/products.js"></script> 

 ↓

<!--{* <script type="text/javascript" src="<!--{$smarty.const.ROOT_URLPATH}-->js/products.js"></script> *}-->

(2)通常価格を税込と税抜で分けて表示させます

【対象ファイル】
・/data/Smarty/templates/default/products/list.tpl
・/data/Smarty/templates/default/products/detail.tpl
・/data/Smarty/templates/default/frontparts/bloc/recommend.tpl

<!--★通常価格★-->
<!--{if $arrProduct.price01_max > 0}-->
    <div class="normal_price">
        <!--{$smarty.const.NORMAL_PRICE_TITLE}-->(税抜):
        <span class="price">
            <span id="price01_default">
                <!--{if $arrProduct.price01_min == $arrProduct.price01_max}-->
                    <!--{$arrProduct.price01_min|number_format}-->
                <!--{else}-->
                    <!--{$arrProduct.price01_min|number_format}-->〜<!--{$arrProduct.price01_max|number_format}-->
                <!--{/if}-->
            </span>
            円
        </span>
        <span style="font-size:10px;color:#666;font-weight:normal;">(税込:
            <!--{if $arrProduct.price01_min == $arrProduct.price01_max}-->
                <!--{$arrProduct.price01_min|sfCalcIncTax:$arrSiteInfo.tax:$arrSiteInfo.tax_rule|number_format}-->
            <!--{else}-->
                <!--{$arrProduct.price01_min|sfCalcIncTax:$arrSiteInfo.tax:$arrSiteInfo.tax_rule|number_format}-->〜<!--{$arrProduct.price01_max|sfCalcIncTax:$arrSiteInfo.tax:$arrSiteInfo.tax_rule|number_format}-->
            <!--{/if}-->
        円)</span>
    </div>

(3)販売価格を税込と税抜で分けて表示させます

【対象ファイル】
・/data/Smarty/templates/default/products/list.tpl
・/data/Smarty/templates/default/products/detail.tpl
・/data/Smarty/templates/default/frontparts/bloc/recommend.tpl

<!--★販売価格★-->
   <div class="sale_price"><!--{$smarty.const.SALE_PRICE_TITLE}-->(税抜):
       <span class="price">
           <span id="price02_default">
               <!--{if $arrProduct.price02_min == $arrProduct.price02_max}-->
                   <!--{$arrProduct.price02_min|number_format}-->
               <!--{else}-->
                   <!--{$arrProduct.price02_min|number_format}-->〜<!--{$arrProduct.price02_max|number_format}-->
               <!--{/if}-->
           </span><span id="price02_dynamic"></span>
           円
       </span>
           <span style="font-size:10px;color:#666;font-weight:normal;">(税込:
               <!--{if $arrProduct.price02_min == $arrProduct.price02_max}-->
                   <!--{$arrProduct.price02_min|sfCalcIncTax:$arrSiteInfo.tax:$arrSiteInfo.tax_rule|number_format}-->
               <!--{else}-->
                   <!--{$arrProduct.price02_min|sfCalcIncTax:$arrSiteInfo.tax:$arrSiteInfo.tax_rule|number_format}-->〜<!--{$arrProduct.price02_max|sfCalcIncTax:$arrSiteInfo.tax:$arrSiteInfo.tax_rule|number_format}-->
               <!--{/if}-->
           円)</span>
   </div>

その他

EC-CUBEではカート画面から購入完了までの金額表示は小計/合計共に「税込」になってしまうので、以下のように「税込」であることを明示した方がよいでしょう。

カート画面や注文確認画面では

【対象ファイル】
・/data/Smarty/templates/default/cart/index.tpl
・/data/Smarty/templates/default/shopping/confirm.tpl
 「小計」→「小計(税込)」に変更
 「合計」→「合計(税込)」に変更

受注メールでは

【対象ファイル】
・/data/Smarty/templates/default/mail_templates/order_mail.tpl
 「単価」→「単価(税込)」に変更

Similar posts