Magento如何自动向订单添加跟踪号 [英] Magento How do I automatically add tracking numbers to an order

查看:180
本文介绍了Magento如何自动向订单添加跟踪号的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想自动添加发票的后4位(如果存在),作为每个订单的跟踪号.我怎么做?谢谢

I would like to automatically add the last 4 digits of invoices, when it exists, to be a tracking number for every order. How do I do that? Thanks

推荐答案

创建货件时,请使用自定义模块的观察者动态分配跟踪号.见下文.

When you create a shipment, assign the tracking number dynamically using your custom module's observer. See below.

config.xml

config.xml

<sales_order_shipment_save_before>
    <observers>
        <namespace_modulename_ship_before>
            <type>singleton</type>
            <class>Namespace_Modulename_Model_Observer</class>
            <method>salesOrderShipmentSaveBefore</method>
        </namespace_modulename_ship_before>
    </observers>
</sales_order_shipment_save_before>

Observer.php

Observer.php

public function salesOrderShipmentSaveBefore($observer)
{
    $invoice = $observer->getEvent()->getInvoice();
    $last4 = substr($invoice->getIncrementId(), -4);

    $shipment = $observer->getEvent()->getShipment();
    $track = Mage::getModel('sales/order_shipment_track')
                ->setNumber($last4) //tracking number / awb number
                ->setCarrierCode('custom') //carrier code
                ->setTitle('Custom'); //carrier title
    $shipment->addTrack($track);
}

信用: http://ka.lpe.sh/2012/01/08/magento-save-shipment-information-tracking-number-carrier-code-programmatically/

这篇关于Magento如何自动向订单添加跟踪号的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆