首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >自动网页结帐Magento - Shipping方法

自动网页结帐Magento - Shipping方法
EN

Stack Overflow用户
提问于 2013-08-01 21:15:04
回答 2查看 3.3K关注 0票数 1

我正在研究运输方法的自动化,它似乎工作得很好,但问题是:

每隔2个订单就会出现相同的错误:“请指定发货方式”

会不会是会话错误?变量应该通过get-post发送还是以其他方式从Magento检索?

下面是一个代码:

代码语言:javascript
复制
<?php
$customer = Mage::getSingleton('customer/session')->getCustomer();


$customer->setWebsiteId(Mage::app()->getWebsite()->getId());

echo $customAddress = Mage::getModel('customer/address')->load($customer->getDefaultBilling());


$quote = Mage::getSingleton('checkout/session')->getQuote()->setBillingAddress(Mage::getSingleton('sales/quote_address')->importCustomerAddress($customAddress));

$cart = Mage::getSingleton('checkout/cart');

$storeId = Mage::app()->getStore()->getId();

$checkout = Mage::getSingleton('checkout/type_onepage');

$checkout->initCheckout();

$checkout->saveCheckoutMethod('register');

$checkout->saveShippingMethod('matrixrate_matrixrate_35');

$checkout->savePayment(array('method'=>'pay'));

Mage::getSingleton('checkout/type_onepage')->getQuote()->getShippingAddress()->setShippingMethod('matrixrate_matrixrate_35');


try {
    if ($checkout->saveOrder()) {echo "SUCCESSSSS!!!";}}
catch (Exception $ex) {
    echo $ex->getMessage();
}            

/* Clear the cart */
$cart->truncate();
$cart->save();
$cart->getItems()->clear()->save();
Mage::getSingleton('checkout/session')->clear();

它使用名为Pay的自定义支付网关,我正在使用matrixrate扩展来发货,尽管在flatrate_flatrate上也有同样的错误,所以我不会认为它是扩展问题。

谢谢!

亚当

EN

回答 2

Stack Overflow用户

发布于 2013-09-24 17:14:03

问题:订单拆分后购物车项目仍然显示

1.在发货方式步骤中保存报价集合。

代码语言:javascript
复制
$quote->collectTotals()->save();

2.在订单拆分的最后一节中添加以下步骤。

代码语言:javascript
复制
$quote->setIsActive(false);
$quote->save();
票数 2
EN

Stack Overflow用户

发布于 2013-08-02 00:59:54

解决了问题。

看起来会话/时间有问题,服务器没有一次处理所有事情。

我不得不在购物车-总计页面上添加:

代码语言:javascript
复制
$checkout->getQuote()->getShippingAddress()->setShippingMethod('matrixrate_matrixrate_35');
$checkout->saveShippingMethod('matrixrate_matrixrate_35');

要确保已设置发货,还请执行以下操作:

会话在成功页面手动清除。

有一个总报价数量的错误,所以我只是重新设计了脚本,以正确计算它。

非常感谢您的帮助!

亚当

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17995118

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档