Задать вопрос
onix2517
@onix2517
Программирую бэк на php и C#

Как сделать нестандартный заказ в Woocommerce?

Привет всем!
Как сделать нестандартный заказ в Woocommerce?
Нужно сделать страницу заказа в один шаг, убрать не нужные поля и тд.
Как это реализовать?
  • Вопрос задан
  • 122 просмотра
Подписаться 1 Сложный Комментировать
Решения вопроса 1
При заказе в 1 клик предполагается отсутствие корзины - заказ сразу создаётся без добавления в корзину.
У вас, судя по вопросу, заказы должны по прежнему идти через корзину, то есть - клиент положил товар(ы) в корзину, после этого перешёл в корзину, где должен быть упрощённый механизм не в 2 шага, а в 1. Если я всё правильно понимаю?

Если это так - то в админке сайта у вас в разделе "Страницы" находите страницы "Корзина" и "Оформление заказа". На каждой из них есть по одному шорткоду: woocommerce_cart и woocommerce_checkout. Вам нужно оба шорткода вывести не на разных страницах, а на одной. Т.е. шорткод woocommerce_checkout переносите на страницу "Корзина", где у вас будет теперь жить два шорткода.
После этого в настройках магазина WooCommerce->Настройки->Дополнительно нужно будет указать для страницы оформления заказа страницу "Корзина", чтобы магазин "понимал", куда "переехал" checkout.

После этого убираете лишние поля:

add_filter( 'woocommerce_checkout_fields' , 'custom_override_checkout_fields' );
function custom_override_checkout_fields( $fields ) {
// billing
   unset($fields['billing']['billing_first_name']);
    unset($fields['billing']['billing_last_name']);
    unset($fields['billing']['billing_email']);
    unset($fields['billing']['billing_phone']);
    unset($fields['billing']['billing_company']);
    unset($fields['billing']['billing_city']);
    unset($fields['billing']['billing_address_1']);
    unset($fields['billing']['billing_address_2']);
    unset($fields['billing']['billing_country']);
    unset($fields['billing']['billing_state']);
    unset($fields['billing']['billing_postcode']);
// shipping
    unset($fields['shipping']['shipping_first_name']);
    unset($fields['shipping']['shipping_last_name']);
    unset($fields['shipping']['shipping_email']);
    unset($fields['shipping']['shipping_phone']);
    unset($fields['shipping']['shipping_company']);
    unset($fields['shipping']['shipping_city']);
    unset($fields['shipping']['shipping_address_1']);
    unset($fields['shipping']['shipping_address_2']);
    unset($fields['shipping']['shipping_country']);
    unset($fields['shipping']['shipping_state']);
    unset($fields['shipping']['shipping_postcode']);
return $fields;
}


Соответственно, смотрите какие из полей вам нужны, а какие нет.

Ну а с вёрсткой, там уже нужно работать с соответствующими шаблонами из wp-content/plugins/woocommerce/templates
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@kostya_vtomske
Первое что приходит на ум это:
Модули покупки в 1 клик минуя стандартную корзину

https://ru.wordpress.org/plugins/buy-one-click-woo...
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы