jquery - 在 Shopify 中,跳过“添加到购物车”流程,并单击按钮从“产品详细信息”页面直接重定向到“结账”页面

标签 jquery shopify checkout liquid

我正在为客户在 Shopify 中开发一个带有布鲁克林主题的项目。我们的客户仅展示三种产品,每种产品有 4 个变体。根据要求,我们不必在购物车页面上重定向,只需在添加变体后单击产品页面上的按钮即可重定向到结账页面。

为此,我在谷歌上搜索了正确的解决方案,但找不到合适的解决方案。所以我用 jquery 编写了这个过程,它正在工作。但我所做的过程是一种令人讨厌的方式,我想要一些干净的过程。我知道有一个应用程序,但我的客户不打算为其购买任何应用程序。

我编写的脚本是:

product-template.liquid文件中,我注释掉了“添加到购物车”按钮,而是添加了一个按钮。

<button  name="checkoutty" class="btn to">Checkout</button>

以及该液体模板中的脚本:

$(function() {
$(window).on('load',function(){
  $.ajax({
      type: "POST",
      url: '/cart/clear.js',
      success: function(){
        //alert('I cleared the cart!');
       },
      dataType: 'json'
    });

  })
});

 $(document).ready(function(){
$('.single-option-selector__radio').click(function(){
    if($(this).is(':checked')){
        $('.product-single__add-to-cart button[type="submit"]').removeClass('disabled').attr('disabled','');
           $('button[type="submit"]').attr('disabled','');

         }
               });
    $('.to').click(function(){
         $('[action="/cart/add"]').trigger('submit')
    });
 });

cart.liquid模板中

<script>
  $(window).load(function(){
 $('.cart__checkout').trigger('click');

  });
</script>

虽然它正在工作,但我对此并不满意,因为它重定向到购物车页面,然后重定向到结帐页面,因为我强制提交购物车添加表单,然后在购物车液体页面上结帐 btn 单击事件。

在购物车页面上,我可能有额外的预加载器来隐藏内容。所以这一切都是令人讨厌的过程。谁能指导我进行更简单、干净的过程。

提前致谢。

最佳答案

将款式添加到购物车后,您还可以将客户重定向到 /cart/checkout

示例:

$('.add-btn').on('click', function(e) {
    var form = $('#addToCart');
    e.preventDefault()

    $.ajax({
        type: 'POST',                             
        url: '/cart/add.js',
        dataType: 'json',                               
        data: form.serialize(),
        contentType: false,
        processData: false,
        success: function(data) {
            document.location.href = '/cart/checkout';
        }
    });
})

有了这个,您不需要更改 html 或添加隐藏的输入元素。

点击隐藏的输入元素可能不适用于所有移动设备/浏览器。

关于jquery - 在 Shopify 中,跳过“添加到购物车”流程,并单击按钮从“产品详细信息”页面直接重定向到“结账”页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45078511/

相关文章:

iphone - Iphone 应用程序中的 Paypal Checkout Express 和 Web 服务器

PayPal 结帐 - 默认为信用卡选项卡

jquery - 转换完成后监听新事件

jquery - IE 中网页为空白,直到鼠标移动

javascript - Shopify App 代理在每个页面显示内容

javascript - 如何使用 ScriptTags 为 shopify 开发 Rails 应用程序

php - Magento:在结帐时保存自定义地址属性

jquery - jq 命令检查 json 数组响应是否具有使用 shell 脚本批准的特定用户名和状态

javascript - 在点击再次起作用之前需要点击才能走完全程

Shopify - 获取特定集合中的产品列表