我试图开发一个PHP代码,将采取阶增量编号从旧秩序,将与产品定制选项一起创建具有相同产品的新订单(如果有的话) 。 即使有可能通过查询字符串添加产品,但通过我无法添加自定义选项,抓取标准也没问题。购物车页面显示:需要产品定制选项。编程添加多个产品具有自定义选项
我认为(不知道),我甚至成功地通过SOAP API添加产品的定制选项,但是当我重定向到购物车它显示一个空的购物车。
我是个初学者,所以请忽略任何愚蠢的,如果它的存在。 :d 与查询字符串的代码如下:
$form_key = Mage::getSingleton('core/session')->getFormKey();
$arrProducts = array(
/*array
(
"product" => "3",
"qty" => 7
),*/
array
(
"product" => "1",
"qty" => 3,
"options" => array
(
2 => array(
"date" => "11/12/13",
"date_internal" => "2013-12-11 00:00:00"
),
1 => "1"
)
header('Location: '.Mage::getUrl('checkout/cart/add/form_key/'.$form_key.'/', $arrProduct));
所以,这个指导与该产品的页面,但要我选择的产品选项。 当我使用上面评论的其他产品时,它是成功的。
即使我现在可以添加一个产品没有自定义(产品使用id =“3”)在车的选择。代码如下:
<?php
require('../../../app/Mage.php'); //include mage.php
Mage::app();
Mage::getSingleton('core/session', array('name' => 'frontend'));
$form_key = Mage::getSingleton('core/session')->getFormKey();
//echo $form_key;
$cart = Mage::getSingleton('checkout/cart');
$product = new Mage_Catalog_Model_Product();
$product->load(2);
//$product->setProductOptions();
$params = array(
array
(
"product" => "3",
"qty" => 1
),
array
(
"product" => "2",
"qty" => 2,
"options" =>array
(
2 => array
(
"date" => "11/12/2013",
"date_internal"=> "2013-12-11 00:00:00"
),
1 => "1"
)
)
);
$cart->addProduct($product, $params);
$cart->save();
Mage::getSingleton('checkout/session')->setCartWasUpdated(true);
header('Location:http://111.111.1.1/magento/checkout/cart');
?>
,但它不与定制选项中的任何产品(产品使用id =“2”)工作。 错误消息:
致命错误:未收集的异常'Mage_Core_Exception'带消息'请指定产品所需的选项(s)'。在C:\ xampp \ htdocs \ magento \ app \ Mage.php中:594堆栈跟踪:#0 C:\ xampp \ htdocs \ magento \ app \ code \ core \ Mage \ Checkout \ Model \ Cart.php(284):法师:: throwException( '请注明...')#1 C:\ XAMPP \ htdocs中\ Magento的\ pratmagento \面板\命令\ try2addtocart.php(53):Mage_Checkout_Model_Cart-> addProduct命令(对象(Mage_Catalog_Model_Product),阵列)# 2 {主}扔在C:\ XAMPP \ htdocs中\ Magento的\应用\上线594
所以你想复制最后一个订单(产品+自定义选项),并增加一个订单ID? – pablofiumara
是的绝对......我想,并不能设置自定义选项的值。 –
其中一个自定义选项是日期类型。在此先感谢.... –