2013-07-04 44 views
0

过去两天让我头脑发热,但无法做到这一点。帮帮我!!Magento创建出货时发送短信

每次发送邮件时,我都会触发一个代码,它会向客户发送一条短信,通知他/她已下发了他的订单,并且还传递了跟踪号码。

该代码将是这样的:

<?php 
$url = "http://www.abcde.in/binapi/pushsms.php?usr=xyz&pwd=abc&sndr=MEGYTR&ph=8888829554&text=This is test. MegaYtr&rpt=1"; 
$result = file_get_contents($url); 
?> 

问题: 1)从我在哪里运行该代码?

2)如何获得订单号,客户姓名,总计等额外信息&追踪号码。我已经做了,当客户在地方为了我用这个代码发送短信类似:

$order_id = Mage::getSingleton('checkout/session')->getLastRealOrderId(); 
$order_details = Mage::getModel('sales/order')->loadByIncrementId($order_id); 
$shipping_address_data = $order_details->getShippingAddress(); 
$first_name = $shipping_address_data['firstname']; 
$telephone = $shipping_address_data['telephone']; 
$amount_paid = $order_details->total_paid; 
$message = 'Dear '.$first_name.' thank you for shopping at abc.com. Your order'.$this->getOrderId().' amounting to Rs.'.$amount_paid.'is being processed.'; 
echo '<b>'.$message.' Please check your email for further details.</b>'; 

我使用的Magento社区1.7.0.1。

+0

Magento的-SMS-notification.html –

回答

1

试试这个

我想给你无需修改核心文件的简单解决方案。 的,你需要下面SuccessAction创建一个观察者将触发代码时的顺序是全成

checkout_onepage_controller_success_action 

这将帮助你在上面的事件创建观察者事件create observer using this

一个更我想添加的东西是在控制器的位置Mage/Checkout/OnepageController搜索successAction,这是在订单的成功处理的行动。如果您在线240如果您评论$session->clear();比您不需要一次又一次地下订单,只需刷新页面,您可以检查您的更改。

而且最后仅供参考上面的事件将派遣orderId通过使用可以加载顺序对象,做了下面是内置在此扩展功能https://magecomp.com/代码

//load order object 
$_order = Mage::getModel('sales/order')->loadByIncrementId($order_id_from_observer);