Página 1 de 1
[Resolvido] Redirecionar para o carrinho de compras
Enviado: 01 Jul 2018, 21:15
por topmidia22
Gostaria de redirecionar para o carrinha de compras. Entrei com o código abaixo, mas só funciona da home e das categorias.
Algem sabe como fazer isso?
É a versão 3 do Opencart
Código: Selecionar todosif (json['success']) {
window.location.href = 'index.php?route=checkout/cart';
}
Re: Redirecionar para o carrinho de compras
Enviado: 02 Jul 2018, 16:45
por veteranodf
Esse código você adicionar na função que insere ao carrinho no arquivo catalog/view/javascript/common.js veja abaixo;
Padrão:
Código: Selecionar todos if (json['success']) {
$('#content').parent().before('<div class="alert alert-success alert-dismissible"><i class="fa fa-check-circle"></i> ' + json['success'] + ' <button type="button" class="close" data-dismiss="alert">×</button></div>');
// Need to set timeout otherwise it wont update the total
setTimeout(function () {
$('#cart > button').html('<span id="cart-total"><i class="fa fa-shopping-cart"></i> ' + json['total'] + '</span>');
}, 100);
$('html, body').animate({ scrollTop: 0 }, 'slow');
$('#cart > ul').load('index.php?route=common/cart/info ul li');
}
Alterado:
Código: Selecionar todos if (json['success']) {
$('#content').parent().before('<div class="alert alert-success alert-dismissible"><i class="fa fa-check-circle"></i> ' + json['success'] + ' <button type="button" class="close" data-dismiss="alert">×</button></div>');
// Need to set timeout otherwise it wont update the total
setTimeout(function () {
$('#cart > button').html('<span id="cart-total"><i class="fa fa-shopping-cart"></i> ' + json['total'] + '</span>');
}, 100);
$('html, body').animate({ scrollTop: 0 }, 'slow');
$('#cart > ul').load('index.php?route=common/cart/info ul li');
window.location.href = 'index.php?route=checkout/cart'; //Direcionar ao carrinho
}
Na página do produto é o mesmo processo, encontre a função que insere o produto ao carrinho e faço o processo acima, esse é o arquivo catalog\view\theme\default\template\product\product.twig
Re: Redirecionar para o carrinho de compras
Enviado: 03 Jul 2018, 11:01
por topmidia22
Isso não resolve!
Essa alteração só mostra uma mensagem. Uma vez que a ideia é mandar para o Carrinho ou Checkout.
O mais lógico é não mostrar mensagem alguma.
Mas muito o brigado pela sugestão.
Re: Redirecionar para o carrinho de compras
Enviado: 03 Jul 2018, 12:25
por veteranodf
Discordo da sua mensagem, sempre faço essa configuração para meus clientes e o processo é o mesmo, a linha "window.location.href = 'index.php?route=checkout/cart';" que foi adicionado ao script direcionar o cliente ao carrinho após o produto ser adicionado ao mesmo, as únicas hipóteses de não ter funcionado no seu site são;
1- Fez a alteração no lugar errado do script common.js;
2- Você utilizar um tema com um script próprio de add ao carrinho, sendo assim deve fazer a modificação no mesmo;
3- E a ultima possibilidade, após alterado o script não removeu o cache do navegador, sendo assim o navegador na utilizava o script antigo;
Re: Redirecionar para o carrinho de compras
Enviado: 04 Jul 2018, 07:49
por reds
Ola @topmidia22
Caso a sugestão do
@veteranodf não atenda ao seu pedido(que em nosso ver é perfeitamente coesa), olhe para o código dessa modificação, acredito que vai lhe atender.
https://www.opencart.com/index.php?rout ... n_id=27499
Não precisa usar o mod apenas use o padrão informado pelo mesmo em sua base.

Re: Redirecionar para o carrinho de compras
Enviado: 09 Mai 2019, 21:02
por bneto
veteranodf parabéns!!
Aqui deu tudo certinho!! Estou com o opencart 3.0.2.0!
Fica com DEUS!!
Re: [Resolvido] Redirecionar para o carrinho de compras
Enviado: 11 Mai 2019, 02:14
por bneto
veteranodf, eu percebi que na página do produto , o botão comprar, não direciona direto para o carrinho. Aparece somente a mensagem: Você adicionou....
Na home funciona perfeitamente!! Você consegue ajudar a integrar esse botão para a mesma função?
Att. Lidio
Re: [Resolvido] Redirecionar para o carrinho de compras
Enviado: 12 Mai 2019, 01:17
por bneto
@veteranodf
Tudo Blz!!! Para a home tudo certo Sucesso!! Porém para Página Produto Não obtive sucesso;
Vi sua orientação para a página do produto e acrescentei a linha. O que eu estou errando?
Estou adicionando o código e onde eu adicionei no o arquivo, este é o local: catalog\view\theme\default\template\product\product.twig
Código: Selecionar todos/--></script>
<script type="text/javascript"><!--
$('#button-cart').on('click', function() {
$.ajax({
url: 'index.php?route=checkout/cart/add',
type: 'post',
data: $('#product input[type=\'text\'], #product input[type=\'hidden\'], #product input[type=\'radio\']:checked, #product input[type=\'checkbox\']:checked, #product select, #product textarea'),
dataType: 'json',
beforeSend: function() {
$('#button-cart').button('loading');
},
complete: function() {
$('#button-cart').button('reset');
},
success: function(json) {
$('.alert-dismissible, .text-danger').remove();
$('.form-group').removeClass('has-error');
if (json['error']) {
if (json['error']['option']) {
for (i in json['error']['option']) {
var element = $('#input-option' + i.replace('_', '-'));
if (element.parent().hasClass('input-group')) {
element.parent().after('<div class="text-danger">' + json['error']['option'][i] + '</div>');
} else {
element.after('<div class="text-danger">' + json['error']['option'][i] + '</div>');
}
}
}
if (json['error']['recurring']) {
$('select[name=\'recurring_id\']').after('<div class="text-danger">' + json['error']['recurring'] + '</div>');
}
// Highlight any found errors
$('.text-danger').parent().addClass('has-error');
}
if (json['success']) {
$('.breadcrumb').after('<div class="alert alert-success alert-dismissible">' + json['success'] + '<button type="button" class="close" data-dismiss="alert">×</button></div>');
$('#cart > button').html('<span id="cart-total"><i class="fa fa-shopping-cart"></i> ' + json['total'] + '</span>');
$('html, body').animate({ scrollTop: 0 }, 'slow');
$('#cart > ul').load('index.php?route=common/cart/info ul li');
window.location.href = 'index.php?route=checkout/cart'; //DIRECIONAR AO CARRINHO
}
},
error: function(xhr, ajaxOptions, thrownError) {
alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
}
});
});
//--></script>
Att. Lidio