Jump to content

Ghost Carrier - How to delete free shipping carrier


Recommended Posts

Hi,

 

I have two carriers defined on my store: a) every order has a shipping cost; B) orders over 100€ are free but above also has a shipping cost.

 

And don't know why I also have a third carrier, a free shipping carrier... It is driving me nuts! want to delete it but it seems impossible.. I've searched at files and DB carrier tables and this carrier is not there but it appears on cart check out with the following code:

<div class="delivery_option item">
					<input class="delivery_option_radio" type="radio" name="delivery_option[6]" onchange="updateExtraCarrier('0,', 6);" id="delivery_option_6_2" value="0,">
					<label for="delivery_option_6_2">
						<table class="resume">
							<tbody><tr>
								<td class="delivery_option_logo">
																																				</td>
								<td>
																											<div class="delivery_option_title"></div>
																																																															<div class="delivery_option_best delivery_option_icon">O melhor preço e velocidade</div>
																																			</td>
								<td>
								<div class="delivery_option_price">
																			Grátis
																	</div>
								</td>
							</tr>
						</tbody></table>
						<table class="delivery_option_carrier  not-displayable" style="display: none;">
														<tbody><tr>
																<td class="first_item" colspan="2">
									<input type="hidden" value="" name="id_carrier">
																	</td>
							</tr>
												</tbody></table>
					</label>
				</div>

What am I doing wrong? Which DB table or file should I edit?

 

Thanks in advance for your help!

 

 

Link to comment
Share on other sites

  • 2 weeks later...
  • 1 month later...

Hi, I had same problem that my shop was showing a ghost carrier, free and best...

 

I have edited some file in default bootstrap theme. Open order-carrier.tpl file and find:

{if count($option_list) > 1}
														{if $option.is_best_grade} 	
															{if $option.is_best_price}     
																{l s='The best price and speed'}
															{else}
																{l s='The fastest'}
															{/if}
														{else}
															{if $option.is_best_price}
																{l s='The best price'}

change to : 

{if count($option_list) > 5}
														{if $option.is_best_grade} 	
															{if $option.is_best_price}     
																{l s='The best price and speed'}
															{else}
																{l s='The fastest'}
															{/if}
														{else}
															{if $option.is_best_price}
																{l s='The best price'}

I assumed that if you have carriers more than 1, this line is offering free carrier for your website, without your permission. You need to change this number to whatever you want. I guess nobody has more than 5 carriers. So after did this trick you will no longer offer free carrier. Ta da!

  • Like 1
Link to comment
Share on other sites

Hi Bilegt,

 

Thanks for your help!!! I've tested it but the row with the bullet and the "free" word still there..

 

I realized that my ghost carrier has a $key =0... So, I did the trick using the following code:

 

around line 135,  just after these lines:

 

{foreach $option_list as $key => $option}
<div class="delivery_option {if ($option@index % 2)}alternate_{/if}item">
 
insert this:
 

{if $key != 0}

 

(..)

 

and close if around line 196, after these lines

 

{/if}
{else}
{l s='Free'}
{/if}
</div>
</td>
</tr>
</table>
 
like this:
 
 

{/if}

 

 

The whole code would be like this:

{foreach $option_list as $key => $option}
				<div class="delivery_option {if ($option@index % 2)}alternate_{/if}item">
				{if $key != 0}		
					<input class="delivery_option_radio" type="radio" name="delivery_option[{$id_address}]" onchange="{if $opc}updateCarrierSelectionAndGift();{else}updateExtraCarrier('{$key}', {$id_address});{/if}" id="delivery_option_{$id_address}_{$option@index}" value="{$key}" {if isset($delivery_option[$id_address]) && $delivery_option[$id_address] == $key}checked="checked"{/if} />
					<label for="delivery_option_{$id_address}_{$option@index}">
						
						<table class="resume">
							<tr>
								<td class="delivery_option_logo">
									{foreach $option.carrier_list as $carrier}
										{if $carrier.logo}
											<img src="{$carrier.logo}" alt="{$carrier.instance->name}"/>
										{else if !$option.unique_carrier}
											{$carrier.instance->name}
											{if !$carrier@last} - {/if}
										{/if}
									{/foreach}
								</td>
								<td>
								{if $option.unique_carrier}
									{foreach $option.carrier_list as $carrier}
									
									
												
										<div class="delivery_option_title">{$carrier.instance->name}</div>
									{/foreach}
									{if isset($carrier.instance->delay[$cookie->id_lang])}
										<div class="delivery_option_delay">{$carrier.instance->delay[$cookie->id_lang]}</div>
									{/if}
								{/if}
									{if count($option_list) > 1}
									{if $option.is_best_grade}
										{if $option.is_best_price}
										<div class="delivery_option_best delivery_option_icon">{l s='The best price and speed'}</div>
										{else}
										<div class="delivery_option_fast delivery_option_icon">{l s='The fastest'}</div>
										{/if}
									{else}
										{if $option.is_best_price}
										<div class="delivery_option_best_price delivery_option_icon">{l s='The best price'}</div>
										{/if}
									{/if}
								{/if} 
								</td>
								<td>
								<div class="delivery_option_price">
									{if $option.total_price_with_tax && (!isset($free_shipping) || (isset($free_shipping) && !$free_shipping))}
										{if $use_taxes == 1}
											{if $priceDisplay == 1}
												{convertPrice price=$option.total_price_without_tax} {l s='(tax excl.)'}
											{else}
												{convertPrice price=$option.total_price_with_tax} {l s='(tax incl.)'}
											{/if}
										{else}
											{convertPrice price=$option.total_price_without_tax}
										{/if}
									{else}
										{l s='Free'}
									{/if}
								</div>
								</td>
							</tr>
						</table>
					{/if}

For now it's working...

  • Like 2
Link to comment
Share on other sites

  • 2 months later...
  On 10/7/2014 at 5:56 AM, Bilegt said:

Hi, I had same problem that my shop was showing a ghost carrier, free and best...

 

I have edited some file in default bootstrap theme. Open order-carrier.tpl file and find:

{if count($option_list) > 1}
														{if $option.is_best_grade} 	
															{if $option.is_best_price}     
																{l s='The best price and speed'}
															{else}
																{l s='The fastest'}
															{/if}
														{else}
															{if $option.is_best_price}
																{l s='The best price'}

change to : 

{if count($option_list) > 5}
														{if $option.is_best_grade} 	
															{if $option.is_best_price}     
																{l s='The best price and speed'}
															{else}
																{l s='The fastest'}
															{/if}
														{else}
															{if $option.is_best_price}
																{l s='The best price'}

I assumed that if you have carriers more than 1, this line is offering free carrier for your website, without your permission. You need to change this number to whatever you want. I guess nobody has more than 5 carriers. So after did this trick you will no longer offer free carrier. Ta da!

Voila!!! It works. Thank you so very much. Just saved my day ;)

Link to comment
Share on other sites

  • 1 month later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...