1

送料がまだ計算されていない場合は、[総計]ボックスの行のすぐ下に(追加の送料が追加されます)というテキストを表示したいと思います。'Subtotal'

これは、後の(チェックアウト)段階で注文に追加される追加の送料もあることを顧客に通知するためのものです。

送料がまだ計算されてIF..ELSEいない場合はこのテキストを表示し、計算されている場合は送料の説明とともに送料を表示する方法はありますか。

これを行うために変更できるテンプレート/コアファイルはありますか?

前もって感謝します

編集:合計ボックスはこの行のcheckout/cart.phtmlにあります

   <?php echo $this->getChildHtml('totals'); ?>

totals.phtmlを確認すると、次のようになります。

    <table id="shopping-cart-totals-table">
    <col />
    <col width="1" />
    <tfoot>
        <?php echo $this->renderTotals('footer'); ?>
    </tfoot>
    <tbody>
        <?php echo $this->renderTotals(); ?>
    </tbody>
    </table>

SubTotal、Shipping(計算時)、GrandTotalを表示するコアファイルを確認しました

app / code / core / Mage / Sales / Model / Quote / Address / Total / Subtotal.php

  public function fetch(Mage_Sales_Model_Quote_Address $address)
  {
    $address->addTotal(array(
        'code'  => $this->getCode(),
        'title' => Mage::helper('sales')->__('Subtotal'),
        'value' => $address->getSubtotal()
    ));
    return $this;
  }

app / code / core / Mage / Sales / Modle / Quote / Address / Total / Shipping.php

  public function fetch(Mage_Sales_Model_Quote_Address $address)
  {
    $amount = $address->getShippingAmount();
    if ($amount != 0 || $address->getShippingDescription()) {
        $title = Mage::helper('sales')->__('Shipping & Handling');
        if ($address->getShippingDescription()) {
            $title .= ' (' . $address->getShippingDescription() . ')';
        }
        $address->addTotal(array(
            'code' => $this->getCode(),
            'title' => $title,
            'value' => $address->getShippingAmount()
        ));
    }
    return $this;
  }

しかし、これらのファイルのいずれかを編集する必要があるのか​​、それとも他のファイルが必要なのかはわかりません。この後は先に進めなかったので、これからは外部の助けが必要です。

4

1 に答える 1

0

Subtotal.phpファイルを使用して、別のIF条件を追加し、次のようにコードを変更しました。

 public function fetch(Mage_Sales_Model_Quote_Address $address)
 {
    $amount = $address->getShippingAmount();
    /* MY MODIFIED CODE */
    if($amount == 0)
    {

            $address->addTotal(array(
            'code' => $this->getCode(),
            'title' => Mage::helper('sales')->__('Subtotal <br/><span style="font-size:12px;color:#A4A5A7;">(Additional Shipping cost to be added)</span>'),
            'value' => $address->getSubtotal()
        ));
    }
    /* --------------- */
    else {
        $title = Mage::helper('sales')->__('Subtotal');
        $address->addTotal(array(
            'code' => $this->getCode(),
            'title' => $title,
            'value' => $address->getSubtotal()
        ));
    }
    return $this;
 }

これにより、小計行の直後に「追加の送料が追加されます」という行が追加されます。

于 2012-06-15T17:05:10.127 に答える