質問

私は顧客のデフォルトの配送先住所情報を取得する方法を知っていますが、注文が提出される前に「ワンタイム」配送先住所を取得する方法は?

ジョージアからの顧客はジョージア州でデフォルトのアドレスを持っていますが、この新しい順序のためにフロリダに発送しています。私が彼らの配送先住所が何であるか知りたいのなら、どうすれば私はどのように見つけることができますか?

税計算の目的でこの情報を必要とするため、出荷がフロリダに行っている場合は税金を請求することができます。これは可能な限り?

です

編集

R.S.の提案に基づいて、私は観察者を設定しようとしていますが、私が予想されるように機能していません。私が現在持っているものです:

config.xml

<?xml version="1.0"?>
<config>
    <modules>
        <Mbs_Tax>
            <version>0.1</version>
        </Mbs_Tax>
    </modules>

    <global>
        <events>
            <sales_quote_collect_totals_before>
                <observers>
                    <tax>
                        <type>singleton</type>
                        <class>Mbs_Tax_Model_Observer</class>
                        <method>salesQuoteCollectTotalsBefore</method>
                    </tax>
                </observers>
            </sales_quote_collect_totals_before>
        </events>
    </global>
</config>
.

observer.php

class Mbs_Tax_Model_Observer {
    public function salesQuoteCollectTotalsBefore($observer) {
        $quote = $observer->getQuote();
        $address = $quote->getShippingAddress();
        $region = $address->getData('region');
        Mage::log("Address from salesQuoteCollectTotalsBefore: region ".$region,null,"tax.log");
        if(strtoupper($region)==="FLORIDA") {

            Mage::log("Shipping to Florida: ".print_r($quote->getShippingAddress()->getData('tax_amount'), true),null,"tax.log");
        }
    }
}
.

役に立ちましたか?

解決

<sales_quote_collect_totals_before>のオブザーバを作成してみてください

それからあなたの観察者に

$quote = $observer->getQuote();
$address = $quote->getShippingAddress()
.

ライセンス: CC-BY-SA帰属
所属していません magento.stackexchange
scroll top