Как получить адрес доставки из создания страницы заказа?
-
13-12-2019 - |
Вопрос
Я знаю, как получить информацию о доставке заказчика по умолчанию, но как можно получить «одноразовый» адрес доставки до отправки заказа?
Пример
Клиент из Грузии имеет адреса по умолчанию в Грузии, но доставки во Флориду для этого нового заказа.Если я хочу знать, какой адрес доставки для этого дела, как я могу узнать?
Мне нужно к этой информации для целей налоговых расчетов, поэтому я могу заряжать налог, если отгрузка едет в Флориду.Это даже возможно?
Редактировать
На основании предложений Р.С. Я пытаюсь получить настроек наблюдателя , но он не работает, как я ожидал .Вот что у меня в настоящее время:
<?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()
.