User avatar
Active Member

Posts

Joined
Sun Oct 09, 2011 9:22 pm
Location - London, UK

Post by tanbeen » Tue Feb 19, 2013 5:54 pm

How can i skip this two step in opencart.
Step 3: Delivery Details &
Step 4: Delivery Method
Can any one help me please...?

Newbie

Posts

Joined
Wed Feb 06, 2013 5:24 pm

Post by ksharlandjiev » Fri Feb 22, 2013 2:12 pm

If your products doesn't require shipping, edit your products and check if "shipping" is set to "no". if all of the purchased products doesn't require shipping, this steps will be skipped during checkout.

Power Image Manager | Multi Image uploader | Bulk Update Products to Categories | Bulk Update Orders
Image
NEW! Bulk add options | New! Bulk add attributes | NEW! Keep it Simple Checkout!


User avatar
Active Member

Posts

Joined
Sun Oct 09, 2011 9:22 pm
Location - London, UK

Post by dbckham7 » Sun Oct 13, 2013 12:37 am

I used Simpl3's method and while it did remove Step 1, the Step 2 wasn't expanded upon landing on the checkout page... like how Step 1 would. Thus Billing Details couldn't be entered in... and no other steps could be completed

New member

Posts

Joined
Tue May 08, 2012 2:31 pm

Post by LaurenceLord » Thu Oct 31, 2013 12:49 am

I've been looking at this post and it seems there is a more direct way of skipping the login options... Rather than clicking the "Continue" button in the login.tpl you can skip the login.tpl all together.

Looking at catalog/view/theme/default/template/checkout/checkout.tpl you can see where login.tpl is brough in via this ajax call:

Code: Select all

$.ajax({
			url: 'index.php?route=checkout/login',
			dataType: 'html',
			success: function(html) {
				$('#checkout .checkout-content').html(html);
					
				$('#checkout .checkout-content').slideDown('slow');
			},
			error: function(xhr, ajaxOptions, thrownError) {
				alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
			}
		});	
You can also see what happens when the #button-account link is clicked. There is another ajax call:

Code: Select all

	$.ajax({
		url: 'index.php?route=checkout/' + $('input[name=\'account\']:checked').attr('value'),
		dataType: 'html',
		beforeSend: function() {
			$('#button-account').attr('disabled', true);
			$('#button-account').after('<span class="wait">&nbsp;<img src="catalog/view/theme/default/image/loading.gif" alt="" /></span>');
		},		
		complete: function() {
			$('#button-account').attr('disabled', false);
			$('.wait').remove();
		},			
		success: function(html) {
			$('.warning, .error').remove();
			
			$('#payment-address .checkout-content').html(html);
				
			$('#checkout .checkout-content').slideUp('slow');
				
			$('#payment-address .checkout-content').slideDown('slow');
				
			$('.checkout-heading a').remove();
				
			$('#checkout .checkout-heading').append('<a><?php echo $text_modify; ?></a>');
		},
		error: function(xhr, ajaxOptions, thrownError) {
			alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
		}
	});
Since we're attempting to to skip login.tpl and get straight to this second ajax call why don't we simply replace the first call with the second one? This will save the login option content from being loaded and speed things up a bit.

The only edit we need to make to this second call to get it working in place of the first is to edit the URL used by ajax(). Rather than getting the end of url: via $('input[name=\'account\']:checked').attr('value') we can simply state this ourselves. The value is 'guest'.

So my suggestion in summary is this:

If you haven't already made a copy of catalog/view/theme/default/template/checkout/checkout.tpl then do so.
Your copy should go in catalog/view/theme/your_theme/template/checkout/checkout.tpl

Replace:

Code: Select all

$(document).ready(function() {
	<?php if(isset($quickconfirm)) { ?>
		quickConfirm();
	<?php }else{ ?>
		$.ajax({
			url: 'index.php?route=checkout/login',
			dataType: 'html',
			success: function(html) {
				$('#checkout .checkout-content').html(html);
					
				$('#checkout .checkout-content').slideDown('slow');
			},
			error: function(xhr, ajaxOptions, thrownError) {
				alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
			}
		});	
	<?php } ?>
});
With:

Code: Select all

$(document).ready(function() {
	<?php if(isset($quickconfirm)) { ?>
		quickConfirm();
	<?php }else{ ?>

		$.ajax({
			url: 'index.php?route=checkout/guest',
			dataType: 'html',
			beforeSend: function() {
				$('#button-account').attr('disabled', true);
				$('#button-account').after('<span class="wait">&nbsp;<img src="catalog/view/theme/default/image/loading.gif" alt="" /></span>');
			},		
			complete: function() {
				$('#button-account').attr('disabled', false);
				$('.wait').remove();
			},			
			success: function(html) {
				$('.warning, .error').remove();
				
				$('#payment-address .checkout-content').html(html).hide().slideDown('slow');
					
				$('#checkout .checkout-content').slideUp('slow');
					
				$('#payment-address .checkout-content').slideDown('slow');
					
				$('.checkout-heading a').remove();
					
				$('#checkout .checkout-heading').append('<a><?php echo $text_modify; ?></a>');
				$('.off').removeClass('off');
			},
			error: function(xhr, ajaxOptions, thrownError) {
				alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
			}
		});

	<?php } ?>
});
Simples! No?

Newbie

Posts

Joined
Mon Sep 16, 2013 9:32 pm
Location - London, UK

Post by kalyaninikam » Fri Oct 06, 2017 2:02 pm

I want to skip step 5 from my checkout process.I want to open step 6 instead of step 5 from step 2 in opencart checkout process.

Visit http://www.mycreativestore.com

Newbie

Posts

Joined
Fri Oct 06, 2017 1:54 pm

Post by sayedsrkkhan » Sat May 26, 2018 1:23 am

how to completely remove login and registration oc 2.3.0.2

New member

Posts

Joined
Wed Apr 18, 2018 5:49 pm
Who is online

Users browsing this forum: Bing [Bot] and 36 guests