EC-CUBE3では、商品個別送料の計算はShoppingServiceクラスが請け負っています。
getProductDeliveryFeeメソッドが担当ですので、ご自身のビジネスに合わせてカスタマイズしたい場合はこのメソッドをごにょごにょしてください。
商品個別送料を商品ごとに1回のみ計算したい場合は、getDeliveryFee()にgetQuantity()を掛けないようにします。

    /**
     * 商品ごとの配送料を取得
     *
     * @param Shipping $Shipping
     * @return int
     */
    public function getProductDeliveryFee(Shipping $Shipping)
    {
        $productDeliveryFeeTotal = 0;
        $shipmentItems = $Shipping->getShipmentItems();
        foreach ($shipmentItems as $ShipmentItem) {
            $productDeliveryFeeTotal += $ShipmentItem->getProductClass()->getDeliveryFee() * $ShipmentItem->getQuantity();
        }
        return $productDeliveryFeeTotal;
    }

EC-CUBE3はカスタマイズが楽になりましたね。

※具体的な動作確認はしていませんので、カスタマイズはご自身の判断で行ってください。

ECCUBE制作トップへ

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

    脆弱性修正