如何在Opencart中对购物车中的一项进行硬编码?

时间:2018-11-25 19:59:32

标签: opencart

我有一个网站。为了使过程更快,当用户单击“购买”按钮时,我想直接将用户导航到购物车。

我创建了函数

function addToCartQuick() {
    // quantity = typeof (quantity) != 'undefined' ? quantity : 1;
    $.ajax({
            url: 'index.php?route=checkout/cart/add',
            type: 'post',
            data: 'product_id=' + 50 + '&quantity=' + 1,
            dataType: 'json',
            beforeSend: function() {
                console.log('started to add');
                $('.js-btn-buy').html('Loading...');
            },
            success: function(json) {
                console.log('added');
                $('#cartlink')[0].click();
                $('.success, .warning, .attention, .information, .error').remove();
                // window.location.href = 'index.php?route=checkout/simplecheckout';
            },
            error: function(xhr, ajaxOptions, thrownError) {
                alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
            }
    });
}

将商品添加到购物车,然后单击隐藏的链接到购物车。如您所见,我也尝试过window.location.href,但是导航起来比较慢。当前的解决方案比window.location.href快一点,但仍然很慢(与单击购物车链接相比)

是否可以对购物车中的一个默认商品进行硬编码(当然可以选择增加/减少和删除商品)?

1 个答案:

答案 0 :(得分:1)

添加到了function index() {下方的catalog / controller / checkout / simplecheckout.php中

if (!$this->cart->hasProducts()) $this->cart->add(<your_product_id>);

然后将“购买”按钮更改为直接链接到结帐/简单结帐。