Magento客人用paypal付款,在前台登录账户后,my order里面查不到他们的Pending Payment订单,提示:提示”You Have Placed No Orders”。
我用自己帐号测试,结果发现跳转到paypal网站进行付款的时候,订单状态为”Pending Payment”,若点击取消付款,订单状态就变成了”cancel”。即便付款成功, 返回的订单状态仍然是”Pending Payment”。经查询,需要设置paypal IPN。若paypal IPN 即时信息通知没有填写正确,只有填写了正确的IPN地址,订单状态才能自动切换成”Processing”。下面问题来了,订单状态 为”Processing”和”cancel” 的订单在客户账户”My orders”链接里面都可以看到,唯有订单状态为”Pending Payment” 的订单看不到,于是我猜想:是不是在magento里面默认不显示订单状态为”Pending Payment”的订单呢?
结果找到app/code/core/Mage/Sales/etc/config.xml 该文件,找到Pending Payment,如下:
<new translate=”label”>
<label>New</label>
<statuses>
<pending default=”1″/>
</statuses>
<visible_on_front>1</visible_on_front>
</new>
<pending_payment translate=”label”>
<label>Pending Payment</label>
<statuses>
<pending_payment default=”1″/>
</statuses>
</pending_payment>
修改为:
<new translate=”label”>
<label>New</label>
<statuses>
<pending default=”1″/>
</statuses>
<visible_on_front>1</visible_on_front>
</new>
<pending_payment translate=”label”>
<label>Pending Payment</label>
<statuses>
<pending_payment default=”1″/>
</statuses>
<visible_on_front>1</visible_on_front>
</pending_payment>
适用于: magento1.7.0.2,大概在 1307行。
保存上传,然后刷新缓存即可。。
(责任编辑:好模板) |