【问题标题】:Product ID code transferring improperly over to Shopify checkout page产品 ID 代码不正确地转移到 Shopify 结帐页面
【发布时间】:2016-02-08 20:54:30
【问题描述】:

我目前有一个使用 shopify 结帐页面的在线商店。有关客户购物车的信息都是通过我围绕 node.js 构建的网站完成的,然后将购物车信息发送到他们能够支付订单的 shopify 结帐页面。

以前,一旦按以下格式按下“结帐”按钮,购物车就会以 URL 的形式将每个产品的产品 ID 和数量发送到 Shopify:

shop.mysite.com/cart/product1:qty,product2:qty,product3:qty,product4:qty

但是,现在 Shopify 不再允许“数量”为 0 值,并让您进入错误 410 页面。我现在需要更改我的代码以反映当 productID 的数量为零时,它不会显示在 URL 中。按钮的当前代码如下:

function updateShopifyCart(){
        var cBBM = ",product2:";
        var co = ":";
        var caHref = 'http://shop.mysite.com/cart/product1:';
        var cMicro = ',product3:';
        var cPower = ',product4:';

        var bbQ = getStoredCartItemAmount('Product1name');
        var bbmQ = getStoredCartItemAmount('Product2name');
        var musbQ = getStoredCartItemAmount('Product3name');
        var powersQ = getStoredCartItemAmount('product4name');

        var cHref = caHref + bbQ + cBBM + bbmQ + cMicro + musbQ + cPower + powersQ;
        $("#checkoutButton").attr("href", cHref);
    }

我猜一个简单的 if;else 语句可能能够解决这个问题,但是我不确定如何为每个 productID 实现它。

任何帮助表示赞赏,谢谢! :)

【问题讨论】:

    标签: javascript node.js paypal e-commerce shopify


    【解决方案1】:

    我建议重构你的代码,否则很难写出你需要的条件:

    function updateShopifyCart(){
        var products = ["product1", "product2", "product3", "product4"];
        var caHref = "http://shop.mysite.com/cart/";
    
        var url = caHref;
        var first = true;
        for (var i = 0; i < products.length; i++) {
            var prod = products[i];
            var qty = getStoredCartItemAmount(prod);
            if (qty > 0) {
               if (!first) {
                   url += ",";
               }
               first = false;
               url += prod + ":" + qty;
            }
        }
    
        $("#checkoutButton").attr("href", url);
    }
    

    【讨论】:

    • 当然你也可以把products数组的初始化和调用(caHref)的url移到这个方法外面。您可以将它们作为输入参数传递给方法。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-09-30
    • 1970-01-01
    • 2018-01-07
    • 1970-01-01
    • 2015-04-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多