将产品添加到 Prestashop 1.6 中特定商店的购物车(以编程方式)

Posted

技术标签:

【中文标题】将产品添加到 Prestashop 1.6 中特定商店的购物车(以编程方式)【英文标题】:Add product to cart in specific shop in Prestashop 1.6 (programmatically) 【发布时间】:2018-02-16 07:57:34 【问题描述】:

我对 PrestaShop 有一个大问题,我正在使用自己创建的 API 为移动应用程序提供服务。

现在,我可以在第一个购物车中添加、删除、更新数量。 我也可以导航到我的在线商店等类别和子类别。

但是我有两家商店,我想在多商店模式下将特定产品添加到第二家商店,脚本总是添加到第一家购物车。

这是我要加入购物车的行。

第一家商店 id = 1 第二家店 = 4

$_shop = new Shop(_PS_SHOP_SELECTED_ID); //_PS_SHOP_SELECTED_ID = 4
$isAdded = $cart->updateQty((int)$product->quantity, (int)$producToAdd->id, $id_product_attribute, FALSE, 'up', 0,$_shop);

【问题讨论】:

如何创建或获取 $cart? $context = Context::getContext(); if (!$context->cart->id) $context->cart->add(TRUE, FALSE, TRUE,_PS_SHOP_SELECTED_ID); $context->cookie->id_cart = $context->cart->id; $cart = new Cart($context->cart->id); $cart->id_customer = (int)UserApi::getIdAuthUser(); $cart->id_lang = _PS_APP_MOBILE_LANG_ID; $cart->id_currency = (int)Context::getContext()->currency->id; $cart->id_carrier = 1; $cart->可回收=0; $cart->礼物 = 0; $cart = new Cart($context->cart->id); 能否编辑您的帖子并添加更多代码? 更精确,对于代码步骤或其他任何内容。谢谢 【参考方案1】:

我终于找到了在上下文中改变商店的最佳和适当的方法。 我从代码中进行了多次搜索,我发现第一个商店分配在 config.inc.php 中,但 steel 从 Shop 类中获取值。

所以要在上下文覆盖中更改商店:

Shop::initialize(); 在 Prestashop 商店类中

设置您的愿望商店!

【讨论】:

以上是关于将产品添加到 Prestashop 1.6 中特定商店的购物车(以编程方式)的主要内容,如果未能解决你的问题,请参考以下文章

根据 prestashop 中的模块状态禁用覆盖的 tpl 文件

如何在 prestashop 1.7 中向 cms 页面添加挂钩

Prestashop 1.6 如何在 Multistor 中允许缺货订单

将facebook像素添加到prestashop中的特定页面

无法在 PrestaShop 1.6 的脚本标签中添加数据属性

Prestashop 产品自定义 - 保存到购物车