加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – Magento 2使用自定义选项以编程方式将产品添加到购物车

发布时间:2020-12-13 21:57:27 所属栏目:PHP教程 来源:网络整理
导读:我创建了一个测试脚本文件,用于将产品添加到带有自定义选项的购物车我希望以编程方式在购物车中显示所选产品的自定义选项. 请检查我的以下代码: $productId = 25;$product = $objectManager-create('MagentoCatalogModelProduct')-load($productId);$ca
我创建了一个测试脚本文件,用于将产品添加到带有自定义选项的购物车我希望以编程方式在购物车中显示所选产品的自定义选项.

请检查我的以下代码:

$productId = 25;
$product = $objectManager->create('MagentoCatalogModelProduct')->load($productId);
$cart = $objectManager->create('MagentoCheckoutModelCart');  
$params = array();      
$params['options[469]'] = 459;
$params['qty'] = 1;
$params['product'] = 25

$cart->addProduct($product,$params);
$cart->save();

使用objectmanager我创建了购物车和产品对象.当我在浏览器中触发此脚本时,它会显示错误:

MagentoFrameworkExceptionLocalizedException: Please specify
product’s required option(s).

我已经在params数组中传递了自定义选项.但仍然显示错误.

如何使用选定的自定义选项将产品添加到购物车中?

请帮我.

任何帮助,将不胜感激.

解决方法

我已经解决了这个问题.
这是我更新的代码.

$productId = 127;
$product = $obj->create('MagentoCatalogModelProduct')->load($productId);

$cart = $obj->create('MagentoCheckoutModelCart');    
$params = array();      
$options = array();
$params['qty'] = 1;
$params['product'] = 127;

foreach ($product->getOptions() as $o) 
{       
    foreach ($o->getValues() as $value) 
    {
        $options[$value['option_id']] = $value['option_type_id'];

    }           
}

$params['options'] = $options;
$cart->addProduct($product,$params);
$cart->save();

这段代码对我有用.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读