Часто сталкиваемся с вопросом, как упростить оформление заказа, убрать не нужные поля. И так:
Включаем гостевой заказ:
order-opc-new-account.tpl
 
При обычном: 
authentication.tpl 
 
Скрываем выбор пола пользователя (муж/жен.) 
По-умолчанию: 
	
	
	
		Код:
	
	
		<p class="radio required">
            <span>{l s='Title'}</span>
            <input type="radio" name="id_gender" id="id_gender1" value="1" {if isset($smarty.post.id_gender) && $smarty.post.id_gender == 1}checked="checked"{/if} />
            <label for="id_gender1" class="top">{l s='Mr.'}</label>
            <input type="radio" name="id_gender" id="id_gender2" value="2" {if isset($smarty.post.id_gender) && $smarty.post.id_gender == 2}checked="checked"{/if} />
            <label for="id_gender2" class="top">{l s='Ms.'}</label>
        </p>
	 
 Добавляем hidden (скрываем
 
	
	
	
		Код:
	
	
		<p class="radio required hidden">
            <span>{l s='Title'}</span>
            <input type="radio" name="id_gender" id="id_gender1" value="1" {if isset($smarty.post.id_gender) && $smarty.post.id_gender == 1}checked="checked"{/if} />
            <label for="id_gender1" class="top">{l s='Mr.'}</label>
            <input type="radio" name="id_gender" id="id_gender2" value="2" {if isset($smarty.post.id_gender) && $smarty.post.id_gender == 2}checked="checked"{/if} />
            <label for="id_gender2" class="top">{l s='Ms.'}</label>
        </p>
	 
  
и тд. со всеми не обяз. полями. 
Значением по-умолчанию добавляем в input
=======================
"значением по умолчанию добавляем в input"???
	
	
	
		Код:
	
	
		<input onkeyup="$('#lastname').val(this.value);" type="text" class="text" id="customer_lastname" name="customer_lastname" value="{if isset($smarty.post.customer_lastname)}{$smarty.post.customer_lastname}{/if}" />
	 
 На: 
	
	
	
		Код:
	
	
		<input type="hidden" name="customer_lastname" value="фамилия" />
	 
 =======================
Убираем обязательные поля 
Их можно убрать в файле 
Address.php, из строки 
Код:
	
	
	
		Код:
	
	
		protected    $fieldsRequired = array('id_country', 'alias', 'lastname', 'firstname', 'address1', 'city');
	 
 ========================
Файл 
order-opc.js 
Нужно заставить его валидировать скрытые поля. 
Для этого из строк (в районе 560-х и 570-х) 
 
	
	
	
		Код:
	
	
		$('#opc_account_form input:visible').each(function() {
	 
 и 
	
	
	
		Код:
	
	
		$('#opc_account_form select:visible').each(function() {
	 
  
нужно убрать подстроки ":visible". 
 
После этого все будет нормально валидироваться. 
==========================
Если выскакивает ошибка id_country
	
	
	
		Код:
	
	
		<label for="id_country">{l s='Country'}</label>
<select name="id_country" id="id_country">
<option value="177" selected="selected">Российская Федерация</option>
</select>
	 
 ==========================
Выбор оплаты по умолчанию (
модуль cashondelivery)
Достаточно в файле payment.tpl модуля cashondelivery изменить адрес ссылки: 
	
	
	
		Код:
	
	
		<a href="{$this_path_ssl}validation.php" title="{l s='Pay with cash on delivery (COD)' mod='cashondelivery'}">
	 
 на 
	
	
	
		Код:
	
	
		<a href="{$this_path_ssl}validation.php?confirm=1" title="{l s='Pay with cash on delivery (COD)' mod='cashondelivery'}">