我正在使用Magento 1.9,基本上我需要做的是在创建发票后向发票中的信息(例如商品ID,价格等)发送请求到外部API。
你对此有什么想法吗?谢谢
答案 0 :(得分:0)
我认为正确的方法是:
Magento支持Google Analytics的开箱即用工作,并且在成功结帐时,基本上跟踪订单的做法是一样的,虽然它不是调用外部API,而是只提供带有订单的特殊标签。客户端。您可以在app / core / Mage / GoogleAnalytics中查看该模块。
答案 1 :(得分:0)
您可以通过自定义模块观察器执行此操作。像这样一步一步地编写自定义模块。
/app/etc/modules/Custom_Orderinfo.xml
<?xml version="1.0"?>
<config>
<modules>
<Custom_Orderinfo>
<active>true</active>
<codePool>local</codePool>
</Custom_Orderinfo>
</modules>
</config>
应用程序/代码/本地/客户/订单信息的/ etc / config.xml中
<?xml version="1.0"?>
<config>
<modules>
<Custom_Orderinfo>
<version>0.1.0</version>
</Custom_Orderinfo>
</modules>
<frontend>
<events>
<checkout_onepage_controller_success_action>
<observers>
<your_sales_order_observer>
<type>singleton</type>
<class>orderinfo/observer</class>
<method>sendOrderInfo</method>
</your_sales_order_observer>
</observers>
</checkout_onepage_controller_success_action>
</events>
</frontend>
<global>
<models>
<orderinfo>
<class>Custom_Orderinfo_Model</class>
</orderinfo>
</models>
<resources>
<orderinfo_setup>
<setup>
<module>Custom_Orderinfo</module>
</setup>
</orderinfo_setup>
</resources>
<helpers>
<orderinfo>
<class>Custom_Orderinfo_Helper</class>
</orderinfo>
</helpers>
</global>
</config>
应用程序/代码/本地/客户/订单信息/型号/ Observer.php
<?php
class Custom_Orderinfo_Model_Observer
{
public function sendOrderInfo($observer)
{
$event = $observer->getEvent();
$orderIds = $event->getOrderIds();
foreach($orderIds as $orderId)
{
$order = Mage::getModel('sales/order')->load($orderId);
$items=$order->getAllItems();
Mage::log($orderId,null,"order_success.log");
/**
* do whatever you want to do here
*/
}
}
}
应用程序/代码/本地/客户/订单信息/助手/ Data.php
<?php
class Custom_Orderinfo_Helper_Data extends Mage_Core_Helper_Abstract
{
}
&#13;
祝你好运!