Как убрать 6 ненужных шагов при оформлении заказа в Opencart и свести всё к минимуму? Ведь зачастую это излишние движения, которые вовсе не нужны. Попробуем реализовать оформление заказа в один простой шаг.
Что для этого потребуется сделать? Придется подредактировать несколько файлов движка Opencart, чтобы скрыть ненужные шаги.
Первый шаг просит покупателя выбрать способ оформления заказа: зарегистрироваться или обойтись без регистрации. По умолчанию выделен вариант с регистрацией. Давайте его поменяем, чтобы не навязывать покупателю зарегистрироваться. Для этого открываем файлcatalog/view/theme/default/template/checkout/login.tpl и примерно на шестой строке находим код
<input type="radio" name="account" value="register" id="register" checked="checked"/>
<?php } else { ?>
<input type="radio" name="account" value="register" id="register" />
<?php } ?>
<b><?php echo $text_register; ?></b></label>
<br />
<?php if ($guest_checkout) { ?>
<label for="guest">
<?php if ($account == 'guest') { ?>
<input type="radio" name="account" value="guest" id="guest" checked="checked" />
<?php } else { ?>
<input type="radio" name="account" value="guest" id="guest" />
И заменяем на:
<input type="radio" name="account" value="register" id="register" />
<?php } else { ?>
<input type="radio" name="account" value="register" id="register" />
<?php } ?>
<b><?php echo $text_register; ?></b></label>
<br />
<?php if ($guest_checkout) { ?>
<label for="guest">
<?php if ($account == 'guest') { ?>
<input type="radio" name="account" value="guest" id="guest" checked="checked" />
<?php } else { ?>
<input type="radio" name="account" value="guest" id="guest" checked="checked" />
Теперь на первом шаге будет сразу выделена кнопка “Оформить без регистрации”. А если вы хотите полностью пропустить выбор способа оформления заказа и переходить сразу к указанию контактных данных, то в том же файле login.tpl в самом начале добавляем этот скрипт:
<script language="Javascript" type="text/javascript">
$(document).ready(function(){
$('#button-account').trigger('click');
});
</script>
Далее нужно скрыть этот шаг в таблице стилей. В файле catalog\view\theme\default\stylesheet\stylesheet.css добавляем правило:
#checkout {display:none;}
После проделанных операций, пользователь при нажатии “оформить заказ” будет сразу попадать на шаг с введением информации.
Чтобы избавится от третьего и четвертого шагов, откроем файлsystem/library/cart.php и найдем в нем строку
public function hasShipping() {
И допишем к ней:
return false;
Чтобы получилось так:
public function hasShipping() {
return false;
$shipping = false;
Шаг с оплатой убираем добавив этот скрипт:
<script language="Javascript" type="text/javascript">
$(document).ready(function(){
$('#button-payment-method').trigger('click');
});
</script>
в начало файла catalog/view/theme/default/template/checkout/payment_method.tpl. И в этом же файле заменяем строчку:
<input type="checkbox" name="agree" value="1"/>
на
<input type="checkbox" name="agree" value="1" checked="checked" />
Открываем файл стилей и скрываем отображение правилом:
#payment-method {display:none;}
Таким образом у нас осталось всего два этапа в оформлении заказа. Переименовать название шагов можно в файлеcatalog\language\russian\checkout\checkout.php
не подходит к Opencart 3
там нет TPL !!!!!
ага для версии 1.5 можно было написать?