下記メソッドをOrder.phpに追加すれば$Order->getProductTax()で商品だけの消費税額を計算できる。proxyがある場合は当然proxyの方に追加が必要。
EC-CUBE4ではOrder.phpのgetTaxメソッドが非推奨となっているので全体の税額も独自に計算した方がいいかも。
@deprecated 明細ごとに集計した税額と差異が発生する場合があるため非推奨
/** * 商品だけの税額を求める * @see https://umebius.com/eccube/calc-product-only-tax/ * @return int|string */ public function getProductTax(){ $tax = 0; foreach ($this->getOrderItems() as $orderItem) { if ($orderItem->getOrderItemType()->getId() == \Eccube\Entity\Master\OrderItemType::PRODUCT) { $tax += $orderItem->getTax() * $orderItem->getQuantity(); } } return $tax; }
EC-CUBEに関するお問い合わせ
[重要]現在公式にセキュリティサポートが切れていないPHPは8.1以上、MySQLは8.0以上で、対応しているEC-CUBEバージョンは4.2以上です。古いEC-CUBEを使っている方は適切なタイミングでバージョンアップをご検討ください。