2013-09-25 4 views
1

Клиент всегда будет иметь бесплатную доставку для всех своих продуктов, проданных через их магазин Lemonstand, поэтому они хотят удалить метод «Метод доставки» из выписки, так как это был бы лишний дополнительный щелчок для пользователь. И поскольку это бесплатная доставка на каждый товар независимо от того, они не хотели устанавливать уникальную опцию «бесплатной доставки» на каждый продукт в магазине, что также было бы трудоемким.Lemonstand: Пропустить способ доставки при оформлении заказа

Сначала я просто удален и unset() значения из моей проверки shipping_method; progress.php частичных, например, так:

<?php 
$steps = array(
    'billing_info'  => 'Billing info', 
    'shipping_info'  => 'Shipping info', 
    //'shipping_method' => 'Shipping method', 
    'payment_method' => 'Payment method', 
    'review'   => 'Order review' 
); 

unset($steps['shipping_method']); 

?> 

(отключенном находится в месте, потому что Lemonstand имеет тенденцию к перезаписи этих значений основанные на типах продукции в процессе оформления заказа)

Однако при этом во время оформления заказа возникает ошибка: «Пожалуйста, выберите способ доставки» - что имеет смысл, поскольку мы ничем не настраиваем его. Любые идеи о том, как пропустить этот шаг и установить способ доставки по умолчанию?

ответ

1

Оказалось, что это может быть достигнуто с помощью одной строки PHP, которую я добавил в checkout; payment_method.php частично, включая вышеуказанные шаги, чтобы удалить шаг метода доставки из проверки.

Во-первых, я создал вариант доставки ставки таблица, в стране, государстве, & города все готово * (звездочка), и стоимость . Затем я дал ему код API default.

В кассе; payment_method.php частичное, я добавил следующую строку:

Shop_CheckoutData::set_shipping_method(Shop_ShippingOption::find_by_api_code('default')->id); 

Таким образом, стадия Способ доставки удаляется из процесса проверки клиента перед, но доставка по-прежнему автоматически выбранных и рассчитанных во время проверки.

Смежные вопросы