@angelzzz

Как в Opencart сделать чтобы всегда по умолчанию был один товар в корзине?

Сайт с одним товаром, сейчас реализована переадресация в корзину при нажатии на кнопку купить. Вот так:

function addToCartQuick(product_id, quantity) {
  $('.js-btn-buy').html('Переадресация в корзину...');
    quantity = typeof (quantity) != 'undefined' ? quantity : 1;
    $.ajax({
            url: 'index.php?route=checkout/cart/add',
            type: 'post',
            data: 'product_id=' + product_id + '&quantity=' + quantity,
            dataType: 'json',
            success: function(json) {
                    $('.success, .warning, .attention, .information, .error').remove();
                    window.location.href = 'index.php?route=checkout/simplecheckout';
            }
    });
}

и соответственно на кнопке "Купить" вызов этой функции

onclick="addToCartQuick('50');"

Проблема в том, что иногда зависает и у пользователя постоянно висит текст Переадресация в корзину... Решил сделать проще - в корзине всегда по умолчанию лежит этот товар и при нажатии на кнопку "Купить" просто открывается корзина. Так мне кажется можно избежать лишних действий. Как сделать, чтобы товар уже лежал в корзине? Захардкодить это при этом оставив возможность менять количество товаров и цену при использовании купонов или доставки
  • Вопрос задан
  • 366 просмотров
Решения вопроса 1
zoozag
@zoozag
Opencart
Сделайте в каком-нибудь месте проверку на пустую корзину, например в контроллере самой корзины (там она уже есть, нужно чуть логику переписать).
$this->cart->hasProducts();
Если корзина пустая, добавьте в нее ваш товар:
$this->cart->add($product_id, $quantity);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы