当前位置: 首页 > 知识库问答 >
问题:

WooCommerce通过联合购物车插件添加到购物车产品

田普松
2023-03-14

我是新来的。我想将产品添加到购物车并列出购物车的所有产品。我已经将Co-Cart插件添加到我的服务器,并且我正在使用Co-Cart API实现购物车相关功能。

我面临的问题是,我不能在我的反应本地应用程序中查看购物车产品。以下是我现在使用的API:

1.将产品添加到购物车:

方法:邮寄

URL:https://www.myhost.com/wp-json/wc/v2/cart/add?token=user_token

参数:{“产品id”:“9168”,“数量”:“1”}

响应:{"key":"af086cdab7954f11a518e3af68XXXXX","product_id": 111,"variation_id": 0,"变化": [], "数量": 1,"数据": {}, "data_hash":"b5c1d5ca8bae6d4896cf1807cdfXXXX","line_tax_data":{"小计": [], "总": [] }, "line_subtotal": 500000,"line_subtotal_tax": 0,"line_total": 50000,"line_tax": 0}

从应用程序向购物车添加产品时,获得状态代码为200的正确响应。

2.查看购物车内容

方法:GET

网址:https://www.myhost.com/wp-json/wc/v2/cart?token=user_token

响应:[](空白JSON数组)

我不知道使用同一用户添加到购物车的产品在哪里。我不知道它如何从移动应用程序管理会话,也不知道获取购物车项目需要什么额外参数。

请让我知道我哪里出错了。我只使用Co-Cart插件API。

**

编辑

**

fetch(url, {
        method: methodName,
        async: true,
        crossDomain: true,
        headers: new Headers({
          "Content-Type": "application/json",
          "cache-control": "no-cache",
        }),
        body:data
      }).then((response) => {
        const statusCode = response.status;
        console.log("fetchData StatusCode : "+statusCode);
        console.log("fetchData response1 : " + JSON.stringify(response));
        console.log("fetchData response2 : " + response);
        return response.json();
      }).then((responseJson) => {
        console.log("fetchData responseJson : "+responseJson);
        var response = JSON.stringify(responseJson);
        console.log("fetchData responseJson stringify : " + response);
        response = JSON.parse(response);
        if (callBack != null) {
          callBack("", response);
        }
      }).catch((error) => {
        console.log("fetchData Api error : "+error);
        if (callBack != null) {
          console.log("fetchData Api error callBack != null 2");
          callBack("Error", "");
        }
      });

url是要发送的url,数据是JSON字符串格式的原始数据,方法是GET或POST。

共有2个答案

茅昀
2023-03-14

我检查文件,https://co-cart.github.io/co-cart-docs/#view-购物车的内容,但没有任何问题与您的。

你能检查设置中的漂亮永久链接

屠华辉
2023-03-14

这是我自己问题的答案。

在没有事先了解WooCommerce及其工作标准的情况下,很难将WooCommerce商店集成到移动应用程序中。

问题是它没有将产品添加到我登录的用户的购物车中,这就是为什么它没有为该用户获取所有产品,因为产品没有添加到用户的购物车中。

它没有将我的购物车与当前用户同步的问题是针对该特定用户的cookie会话。登录后,我需要在每个API调用头中设置该用户的cookie,如下所示:

fetch(url1, {
              method: methodName,
              async: true,
              crossDomain: true,
              headers: new Headers({
                "Content-Type": "application/json",
                "cache-control": "no-cache",
                "cookie":"cookie value will goes here"
              }),
              body:data1
            })

它刚刚解决了我的问题。希望有帮助!

 类似资料:
  • 在商品分类页面上,当有人点击“添加到购物车”时,WooCommerce通过Ajax在此按钮下方添加“查看购物车”。我发现处理这个的脚本是 /assets/js/frontend/add-to-cart.js 现在,我想添加"Procceed to check out",这样某人就可以立即去结账。 这是脚本的输出: 有没有人做过类似的事情?

  • 我经营一家Woocommerce商店,该商店也提供免费产品(_常规价格=0)。客户必须选择数量并将其添加到购物车中,然后下订单才能收到产品。但这并不是Woocommerce的工作原理,它隐藏了所有价格为0的产品的“添加到购物车”链接。并且不会在购物车页面中显示它们。有没有解决这个问题的办法?非常感谢。

  • 最初,我选择了一个包(Woo订阅) 然后添加了所有详细信息。 但未提交。 回到网站,所以再次购买我需要选择一个包。所以我选择了这个包,并填写了详细信息,然后转到付款包。 现在在我的购物车中,两个包都存在(即我没有第一次购买就选择的包和最近的包) 如何修复此问题,使最新选定的一个在购物车中,而较早的一个在选定最新的一个后立即删除。 我尝试了这个Woocommerce从购物车中删除所有产品,并将当前产

  • 问题内容: 单击后,我想重新标记“ 添加到购物车” 按钮,然后将一项添加到购物车, 再添加到购物车中 。 这可能吗? 我有第二个 转到购物车* 按钮的Child-Theme function.php ,并且它正在工作。 * 但是我不知道在将一件商品添加到购物车后如何解决此重新标签问题(商店仅出售一件尺寸不同的商品)。我希望我很清楚。 这是我的代码: 问题答案: 更新: 在下面,您将找到使此重新标记

  • 问题内容: 我有上面的代码。 如果我在cart_item上运行print_r,我将得到一个多维数组: 我如何只获得product_id? 我试过$ test = 没用 问题答案: 要获取 foreach循环中的每个购物车商品(对于简单产品): 如果是可变产品,请获取 : 或在两种情况下 ( Woocommerce 3+中 的 Object在哪里) : 更新: 循环外使用产品ID 1)打破循环 (仅