EC-CUBE3のショッピングカートを見てみると税込みの商品単価や税込み合計金額が表示されていますが、消費税だけの金額というのは表示がありません。

今回は消費税の合計額を簡単にショッピングカートへ表示する方法をご紹介いたします。

※最初の状態
消費税額を未表示

src/Eccube/Entity/Cart.php

普通にカスタマイズしている分にはあまり修正しないファイルですが、注文の金額計算方法を変えたい時など複雑なカスタマイズをするときにはお世話になることもあるクラスです。

このCartエンティティに消費税合計額を計算するメソッドを追加しておきます。

    /**
     * @return integer
     * @see https://umebius.com/eccube/show-tax-amount-in-shopping-cart/
     */
    public function getTotalTax()
    {
        $totalTax = 0;
        foreach ($this->CartItems as $CartItem) {
            $totalTax += ($CartItem->getObject()->getPrice02IncTax() - $CartItem->getObject ()->getPrice02()) * $CartItem->getQuantity();
        }

        return $totalTax;
    }

template/Cart/index.twig

あとはカートのテンプレートファイルにこのメソッドの計算結果を表示してやるだけです。

合計金額の上あたりに表示してあげましょう。

<dl id="total_box__total_price" class="total_price">
       <dt>税額:</dt>
       <dd class="text-primary">¥{{ Cart.total_tax|number_format }}</dd>
       <dt>合計:</dt>
       <dd class="text-primary">¥{{ Cart.total_price|number_format }}</dd>
</dl>

 

※カスタマイズ後
消費税額を表示

いかがでしたでしょうか。税計算は最初戸惑いますが、慣れると自由にカスタマイズできるようになってきます。

EC-CUBE3をご利用の方はぜひお試しください。

日本発!ECオープンプラットフォーム「EC-CUBE」 EC-CUBEゴールドパートナー EC-CUBEは株式会社イーシーキューブの商標です

EC-CUBEカスタマイズに関するお問い合わせはこちら


    [重要]現在公式にセキュリティサポートが切れていないPHPは8.1以上、MySQLは8.0以上で、対応しているEC-CUBEバージョンは4.2以上です。古いEC-CUBEを使っている方は適切なタイミングでバージョンアップをご検討ください。

    EC-CUBEバージョンアップ